jjzjj

C++ - 直接写入内存(内核)

我之前也问过同样的问题,但是我的帖子不知为何被删除了。无论如何,我正在尝试使用C++并编写一个允许我直接访问内存并向其中写入内容的程序。我听说我需要对内核做一些事情,因为它是连接操作系统和应用程序的“桥梁”(我认为)。无论如何,我可以为内核下载一些sdk吗?我在我之前的帖子(一段时间后被删除)中说过,这样做的原因是因为我想按照我大学教授的要求尝试让Windows7崩溃。(所以请不要问我诸如“你为什么要让windows崩溃?”之类的问题……)任何帮助将不胜感激。 最佳答案 如果您对使用内核感兴趣,您可能正在寻找Windows驱动程序工

windows - "bcdedit/dbgsettings NET HOSTIP:123.123.123.123 PORT:50123"无效

根据MSDN使用LAN启用内核调试(我正在使用适当的LAN板),我应该输入:bcdedit/dbgsettingsNETHOSTIP:123.123.123.123PORT:50123但是我得到一个错误:Thedebuggertypespecifiedisnotvalid....怎么会(Win7x64)?? 最佳答案 根据文档“通过网络电缆手动设置内核模式调试”:https://msdn.microsoft.com/en-us/library/windows/hardware/hh439346.aspxthetargetcomput

windows - 如何知道 80000003 断点后面是否隐藏了不同的异常(WER 对话框)

我的应用程序(一个可执行文件)在远程机器上崩溃了。我无权访问该机器,因此我请求了一个通过任务管理器生成的转储。使用WinDbg,在执行命令!analyze-v时,我可以在许多其他内容中看到以下文本EXCEPTION_RECORD:(.exr-1)ExceptionAddress:0000000000000000ExceptionCode:80000003(Breakinstructionexception)ExceptionFlags:00000000NumberParameters:0我怎么知道它是否是导致崩溃的原因?如果不是,我如何确定真正的原因? 最佳

windows - 从性能的角度来看,虚拟地址空间映射如何才能被接受?

这个问题针对任何使用VAS模型的操作系统,但我将指定windowsnt,因为这是我最了解的系统。众所周知,默认情况下,32位Windows上的进程会单独获得2GB的内存。该内存可以位于系统内存、交换文件、USB驱动器等中。这意味着多个进程可以在地址0x12345678分配内存,但是这当然不可能映射到相同的物理内存。我的问题是,如何在不完全破坏性能的情况下做到这一点?处理器是否有某种机制来映射内存地址?每次我们不想访问内存时要求操作系统进行映射查找,看起来很慢.. 最佳答案 有一个硬件设备可以进行翻译-它叫做MemoryManagem

c - 如果使用 printf,驱动程序 "output"会去哪里?

如果我要创建一个驱动程序,比如说Hook用于打开文件的Windows函数。如果在我的驱动程序中我告诉钩子(Hook)printf("something"),当驱动程序打开并且我打开一个文件时,printf会将文本显示到哪里? 最佳答案 如果您想从驱动程序输出文本用于调试和实验目的,请使用DbgPrintEx.可以通过Sysinternals查看输出DebugView或调试器。 关于c-如果使用printf,驱动程序"output"会去哪里?,我们在StackOverflow上找到一个类似

c++ - windows下驱动程序编程入门方法

我想开始学习windows下的驱动程序编程。我从未编写过驱动程序,我正在寻找如何开始的信息。任何教程、链接、书籍推荐以及我应该从什么开发工具包入手?(WDF会好吗?)我真的很想按照时钟编程linktext感谢您的帮助。 最佳答案 我将从downloadingthewindowsdriverkit(WDK)开始.之后,您可以决定需要哪种驱动程序。文件系统驱动程序?(可能不是),RS-232驱动程序?USB驱动程序?他们都遵循不同的规则和怪癖。WDK附带了适用于大多数类型驱动程序的示例驱动程序,应该可以让您快速步入正轨。

windows - 没有设备的设备驱动程序?

我正在创建一个需要使用一些内核级模块的应用程序,为此我将应用程序分为2个:一个用户级程序和一个内核级程序。在阅读了设备驱动程序并浏览了一些教程之后,我有点困惑。是否可以有一个没有任何特定设备关联的设备驱动程序?除了在内核模式下工作的设备驱动程序(内核代码或其他东西)之外,还有其他东西吗?反病毒程序和其他此类应用程序如何在内核模式下运行?设备驱动程序是正确的方法还是我遗漏了什么? 最佳答案 是的,设备驱动程序可以在没有实际硬件(即设备)连接到机器的情况下工作。想一想模拟连接的SCSI驱动器(CD-ROM等)以安装ISO镜像的不同程序。

windows - 内核态定时器

我怎样才能在内核模式下有一个计时器,以便在WindowsXP及更高版本上大约每秒调用我的驱动程序中的指定函数?我应该能够使用函数中的所有函数(特别是ZwQuerySystemInformation)。我不需要高分辨率计时器或毫秒精度或类似的东西,我只需要一种方法来安排一个函数在内核模式下每秒运行一次,并且它必须在所有32位系统windowsxp和更高版本上工作。 最佳答案 通过KeInitializeTimer创建内核定时器.使用KeSetTimerEx设置定时器并使用1s的周期。在您的驱动程序中创建一个线程。在线程中,调用KeWa

windows - 不同的 Windows 操作系统使用了多少个安全环?

我问这个问题,因为我试图搜索所有Windows操作系统(从9x到Windows8,包括WindowsCE/Embedded)的信息,但没有成功,我没有得到准确的计数不同版本的铃声,关于内存范围等。MSDN中有一些关于native开发(KMDF)的信息,但仅适用于比Win32更低级别的工作,并且没有关于所有环和访问每个环的完整信息。你能帮我回答这个问题吗? 最佳答案 现在没有主要操作系统(至少在桌面上没有)使用超过2个环,原因很简单,在一个主要体系结构上,进行系统调用的现代高效方式(例如SYSENTER)专门支持从ring-3到rin

windows - 内核调试: Windows 7 hangs at boot time

有时,我会遇到Windows在启动时等待内核调试器被附加的情况。您会看到“Windows正在启动”文本,但尚未看到Logo。如果我现在附加调试器,就会播放Windows7的Logo动画。随后Logo开始闪烁。在此阶段,引导过程不再进行。CPU使用率降至最低。我通常会等待几分钟,但什么也没有发生。这不会一直发生。但是,如果发生这种情况,VM重置将无济于事。我需要使用启动修复来解决这个问题。不幸的是,这需要永远。除了运行启动修复,我还能做什么?提前致谢! 最佳答案 要解决您遇到的问题,您只需在启动过程中按F10。并删除/debug和相关