protected-mode相关内容

x86 程序集上的保护模式键盘访问

我正在为我正在开发的一个非常基本的内核处理键盘输入,但我完全陷入困境.我似乎无法在网上找到任何可以显示我需要知道的信息的信息. 我的内核现在在保护模式下运行,所以我不能使用实模式键盘例程而不跳转到实模式并返回,这是我试图避免的.我希望能够从保护模式访问我的键盘.有谁知道如何做到这一点?到目前为止,我发现的唯一一件事是它涉及直接使用输入/输出端口与控制器对话,但除此之外,我感到很困惑.当然,这 ..
发布时间:2022-01-13 22:17:05 其他开发

x86 组件上的保护模式键盘访问

我正在为我正在开发的一个非常基本的内核处理键盘输入,但我完全卡住了.我似乎无法在网上找到任何可以显示我需要了解的信息的信息. 我的内核现在正在保护模式下运行,所以我无法使用实模式键盘例程而不跳转到实模式并返回,我试图避免这种情况.我希望能够从保护模式访问我的键盘.有谁知道如何做到这一点?到目前为止我发现的唯一一件事是它涉及使用输入/输出端口直接与控制器对话,但除此之外我很难过.当然,这不是经 ..
发布时间:2022-01-06 13:02:11 其他开发

在保护模式下读取键盘

我正在尝试做一个 PS/2 键盘控制器,但我无法让它工作. outb(0x60, 0xED);输出(0x60,2);/* 打开 CapsLock LED(不起作用)*/字符 c = 0;而 (c != 1){如果(inb(0x60)!= c){c = inb(0x60);如果 (c > 0)putch(scan2char(c));}} scan2char 函数: char scan2char ..
发布时间:2021-09-29 19:37:24 其他开发

Webdriver禁用增强的保护模式

我正在IE11上使用webdriver.并且每个硒都有一组需要在IE11中运行的必需设置,其中之一是在Internet选项>高级>安全中禁用“增强的保护模式"(与Internet选项>安全中的已启用保护模式不同) 问题是,我的组策略禁用了这些字段,这意味着我不能在不要求更改组策略的情况下将其关闭.我想知道是否有IE功能或选项可以解决此问题,例如Internet选项>安全启用保护模式设置的ca ..

不使用DPMI从DOS切换到保护模式

我学习了x86-16组装,我想学习x86-32组装. 我做了一个简单的32位程序,但是此代码不起作用 当程序进行远程跳转时,控制台将显示"JMP非法描述符0" 我使用fasm和DOS 请告诉我我做的不好 这是我的代码 format MZ push cs pop ds mov eax,cs shl eax,4 mov [AdresSegmentuProgramu_32],eax ;Ca ..
发布时间:2020-07-04 19:40:30 其他开发

有人可以解释这个直接组装的x86 JMP操作码吗?

在学校,我们一直在使用引导程序来运行没有操作系统的独立程序.我一直在研究此程序,并且在启用保护模式时,通过直接将操作码和操作数作为程序内的数据进行汇编,可以执行远距离跳转.这是供GNU汇编程序使用的: /* this code immediately follows the setting of the PE flag in CR0 */ .byte 0x66, ..
发布时间:2020-07-04 19:40:27 其他开发

BIOS在保护模式下中断

我正在一个操作系统项目中,使用isolinux(syslinux 4.5)作为引导程序,并使用组织在0x200000的multiboot标头来加载我的内核. 据我所知,内核已经处于32位保护模式.我的问题:有没有更简单的方法来访问BIOS中断? (基本上我想要0x10:D) 加载后,我的内核会设置自己的GDT和IDT条目,并进一步重新映射IRQ.因此,是否可能在内核加载并设置VGA/S ..
发布时间:2020-07-04 19:39:24 其他开发

从ActiveX(保护模式IE)保存文件的技术

我有一个ActiveX. ActiveX的意思是: Internet Explorer 本地二进制代码 从dll(.ocx)运行 处于保护模式 用户想要保存一些内容.我想显示一个另存为对话框,然后保存到他们说的位置. 由于托管我的ActiveX的进程以低完整性级别运行,因此代码无法保存到用户请求的位置. 由于托管ActiveX的进程正在Internet Expl ..
发布时间:2020-07-04 19:39:21 其他开发

int 13h在Windows保护模式下?

我们可以在Windows操作系统中使用Int 13h(直接磁盘读/写),还是Windows保护模式不允许我们这样做? 预先感谢. 解决方案 否,Windows子系统在引导过程中进行初始化时会重新配置内核的BIOS中断处理,因为BIOS调用是16位的,不是保护模式因此int 13h将是无效的.这就是为什么有些驱动程序是为32位保护模式编写的,从而完全绕过了BIOS. 哪个请求解决-您为 ..
发布时间:2020-07-04 19:39:18 其他开发

远跳到保护模式后的GPF

在使用GRUB作为引导加载程序进行了数周的工作后,我决定自己滚动,以便了解它们的工作原理.我在互联网上找到了Brokenthorn的教程(当前在 http://www.brokenthorn.com/Resources/OSDev9 .html ).当我尝试切换到保护模式时,cpu硬件会在跳远后重置.我正在运行bochs v.2.6. 这是我的第二阶段引导程序(几乎是本教程的副本,因为我认为 ..
发布时间:2020-07-04 19:39:16 其他开发

进入保护模式时出现三重故障

我正在开发一个引导加载程序,它将在进入保护模式后引导到一个简单的内核中.我使用了本文作为教程,在第四,五章的某个地方.从理论上讲,它应该以16位实模式启动,将内核加载到内存中,切换到32位保护模式,然后开始执行内核代码. 但是,当我进入保护模式并跳远或跳到另一段时,它会导致三重故障.这是主要的引导扇区代码: [org 0x7c00] KERNEL_OFFSET equ 0x1000 ..
发布时间:2020-07-04 19:39:13 其他开发

如何从低完整性级别流程创建中等完整性级别流程?

如果我以保护模式运行IE,则其完整性级别较低.然后,如果我创建一个中等完整性级别的进程(由ActiveX简化),则IE会在“海拔警告"窗口中向用户发出警告. 如何从另一个具有较低完整性级别的进程(例如chrome)创建中等进程? 解决方案 您将必须执行Internet Explorer(和Chrome)的操作.浏览器标签本身是在低强制完整性级别下运行的独立进程.但是仍然有一个中等级父 ..
发布时间:2020-07-04 19:39:09 其他开发

IE保护模式+ SSL登录=非SSL页面没有cookie

(FWIW,我也已将此问题发布到我的博客中: http://blog.wolffmyren.com/2011/07/11/ie-protected-mode-ssl/) 有没有人知道如何解决Internet Explorer保护模式的限制而无需最终用户将我们的网站添加到“受信任的站点"列表中? 问题在于,如果我们为站点启用SSL登录,则它们只能访问SSL页面. IE阻止我们非SSL服务 ..

IE11间歇性不加载页面

我们的许多用户报告说,使用IE11访问我们的网站时,他们获得了空白页.有时他们甚至没有空白页,浏览器只是停留在最后访问的页面上.这些用户可以毫无问题地访问其他域(例如google.com). 对于出现故障的浏览器,如果这些用户在IE中禁用了保护模式,则他们可以再次访问我们的网站,但这不是一个好的解决方案,因为我们有成千上万的用户,我们无法告诉每个他们重新配置他们的浏览器,更不用说我们完全失去 ..
发布时间:2020-07-04 19:39:03 其他开发

OsDev syscall/sysret和sysenter/sysexit指令启用

我正在组装32位操作系统. 我已经设置了IDT,并且正在通过int指令处理程序中断. 如何启用syscall和sysenter指令以及如何处理/返回? 是真的,英特尔处理器不支持32位的syscall指令,所以我不能使用它? sysret指令不安全吗? 某处是否存在针对此的教程? 编辑:我的主要问题是如何启用syscall和sysenter指令! (无重复) 解决方案 有关 ..

在DOS EXE程序中从保护模式切换到实模式

我学会了使用基于DOS的简单Bootloader切换到保护模式.该加载程序将kernel.bin加载到缓冲区中,并将缓冲区复制到100000h(内核为8KiB).然后将控制权转移到内核.当我从内核返回并尝试切换到实模式时,我遇到了问题. 我的FASM汇编代码(类似于我以前的 Stackoverflow问题)如下: format MZ push cs pop ds mov eax,cs ..
发布时间:2020-06-14 19:12:02 其他开发

实模式BIOS例程和保护模式

我正在做一些OS实验.到目前为止,我所有的代码都利用实模式BIOS中断来操作硬盘和软盘.但是一旦我的代码启用了CPU的保护模式,所有的实模式BIOS中断服务例程将不可用.我如何读写硬盘和软盘? 我现在需要做一些硬件驱动程序吗?如何开始?这是OS如此难以开发的原因之一吗? 我知道,硬件都是通过读写某些控制或数据寄存器来控制的.例如,我知道硬盘的命令块寄存器的范围是0x1F0到0x1F7. 但是 ..
发布时间:2020-05-21 19:02:28 其他开发

x86 Assembly上的保护模式键盘访问

我正在为我正在开发的非常基本的内核进行键盘输入,并且完全陷入了困境.我似乎在网上找不到任何可以向我显示我需要知道的信息的信息. 我的内核目前正在保护模式下运行,因此我无法避免进入实模式并返回实模式来使用键盘常规例程.我希望能够从保护模式访问键盘.有谁知道如何做到这一点?到目前为止,我发现的唯一一件事是涉及使用输入/输出端口直接与控制器对话,但除此之外,我感到很困惑.当然,这不是经常出现的事情 ..
发布时间:2020-04-25 11:16:07 其他开发