ReactOS 从内核发起系统调用和sysfuncs.lst文件

Posted bcbobo21cn

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ReactOS 从内核发起系统调用和sysfuncs.lst文件相关的知识,希望对你有一定的参考价值。

系统调用一般是从用户空间发起的,但Windows也允许从内核进行系统调用。
内核中一般不能直接调用NtReadFile()一类的函数;内核中只能通过ZwReadFile()一类函数进行系统调用。

类似于ZwReadFile()的函数有两百多个,ReactOS提供了生成这些函数的工具。工具根据sysfuncs.lst文件来进行生成;
此文件在ReactOS源码目录中;自己搜一下;此文件部分内容如下;

在微软的VC开发环境(Visual Studio)中、以及Win2k DDK中,都有个“头文件”winbase.h,里面有ReadFile()的接口定义;
函数名前面的关键词WINAPI表示这是个定义于Win32 API的函数;

在ReactOS的代码中同样也有winbase.h,这是在目录reactos/w32api/include中;
BOOL WINAPI ReadFile(HANDLE, PVOID, DWORD, PDWORD, LPOVERLAPPED);

以上是关于ReactOS 从内核发起系统调用和sysfuncs.lst文件的主要内容,如果未能解决你的问题,请参考以下文章

6 io

基于Wrk和ReactOS源码分析APC机制的记录

五种I/O模型

Windows内核加载器概念学习

ReactOS --- Windows操作系统重现

操作系统基础