E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
漫谈兼容内核
漫谈兼容内核
之五:Kernel-win32的系统调用机制
正如许多网友所言,要在Linux内核中实现Windows系统调用(或别的系统调用),最简单的办法莫过于把这些系统调用“搭载”在Linux系统调用上。具体又有几种不同的方法:1.为Linux系统调用ioctl()增加一些“命令码”,每个新的命令码都代表着一个Windows系统调用。2.为Linux增加一个新的系统调用、例如win32_syscall()、作为总的入口和载体,然后定义一些类似于ioct
zytju1983
·
2020-09-10 22:05
漫谈兼容内核
windows
struct
数据结构
linux
linux内核
thread
漫谈兼容内核
之十一:Windows DLL的装入和连接
在PE映像的装入和启动过程中,DLL的装入和连接是一个重要的环节。读者在上一篇漫谈中看到,Windows的DLL装入(除ntdll.dll外)和连接是通过ntdll.dll中的一个函数LdrInitializeThunk()实现的。在Wine中,这个环节也是通过一个同名的函数实现的,只不过这个函数不在ntdll.dll中,而是wine-kthread里面的一个函数。在ReactOS中则同样也是Ld
zytju1983
·
2020-09-10 22:05
漫谈兼容内核
漫谈兼容内核
之十九:Windows线程间的强相互作用
在现代的计算机系统中,一项作业(Job)往往需要多个进程或线程的协作,而操作系统则要为进程或线程间的协作提供基础设施和机制上的支持。操作系统、特别是内核,提供什么样的设施和手段,系统中的进程之间和线程之间就会有什么样的相互作用。如果把一个系统比作一个社会,那么系统中的进程和线程就好像是社会中的成员。成员的行为和成员之间的关系有其“社会性”的一面、即互相影响的一面。例如一个线程的调度优先级就有社会性
zytju1983
·
2020-09-10 22:05
漫谈兼容内核
漫谈兼容内核
之二十二:Windows线程的调度和运行
了解Windows线程的系统空间堆栈以后,还有必要对Windows线程的调度、切换、和运行也有所了解。当然,就兼容内核的开发而言,内核的线程调度/切换/运行机制只能有一套,而且必定是基本上沿用Linux的这套机制,而不可能在一个内核中有两套调度/运行机制。但是对于Windows这套机制的了解对于兼容内核的开发也很重要,并且还是必须的。举例来说,大家都知道在Windows系统中段寄存器FS在用户空间
zytju1983
·
2020-09-10 22:32
漫谈兼容内核
漫谈兼容内核
之十二:Windows的APC机制
前两篇漫谈中讲到,除ntdll.dll外,在启动一个新进程运行时,PE格式DLL映像的装入和动态连接是由ntdll.dll中的函数LdrInitializeThunk()作为APC函数执行而完成的。这就牵涉到了Windows的APC机制,APC是“异步过程调用(AsyncroneusProcedureCall)”的缩写。从大体上说,Windows的APC机制相当于Linux的Signal机制,实质
zytju1983
·
2020-09-10 22:32
漫谈兼容内核
漫谈兼容内核
之二十六:Windows的结构化异常处理(三)
用户空间的异常机制是对于系统空间的异常机制的模拟。在内核中,并非所有的异常都是一来就进入“基于SEH框架(Frame-Based)”的异常处理,而是先进入_KiTrap14()等等类似于向量中断的入口,在那里可以被拦截进行一些优先的处理,例如页面换入和对Copy-On-Write页面的处理等等。这些处理是全局性质的,而不属于某个SEH域。这相当于是一层全局性的过滤。只有不属于这个层次的异常才会进入
zytju1983
·
2020-09-10 22:32
漫谈兼容内核
漫谈兼容内核
之十六:Windows的进程间通信
对于任何一个现代的操作系统,进程间通信都是其系统结构的一个重要组成部分。而说到Windows的进程(线程)间通信,那就要看是在什么意义上说了。因为正如“Windows的跨进程操作”那篇漫谈中所述,在Windows上一个进程甚至可以“打开”另一个进程,并在对方的用户空间分配内存、再把程序或数据拷贝过去,最后还可以在目标进程中创建一个线程、让它为所欲为。显然,这已经不只是进程间的“通信”,而是进程间“
zytju1983
·
2020-09-10 11:02
漫谈兼容内核
漫谈兼容内核
之七:Wine的二进制映像装入和启动
上一篇漫谈中介绍了几种二进制可执行映像的识别方法,而识别的目的当然是为了要装入并启动这些映像的执行。映像的装入和启动一般总是和创建进程相连系,所以本来就是个相当复杂的过程。而对于Wine,则在进程创建方面又增添了一些额外的复杂性。为什么呢?我们这样来考虑:在Windows或ReactOS中,创建进程是由CreateProcessW()完成的,系统中的“始祖”进程就是个Windows进程,代代相传下
zytju1983
·
2020-08-20 21:30
漫谈兼容内核
漫谈兼容内核
之十七:再谈Windows的进程创建
在漫谈之十中。我根据“MicrosoftWindowsInternals4e”一书第六章的叙述介绍了Windows的进程创建和映像装入的过程。但是,由于缺乏源代码的支撑,这样的叙述对于只是想对此有个大致了解的读者固然不无帮助,可是对于需要实际从事研发、特别是兼容内核开发的读者就显得过于抽象笼统了。不幸,Windows内核的代码是不公开的,我们无法通过Windows内核的代码来确切地了解和理解它的方
zytju1983
·
2020-08-19 06:02
漫谈兼容内核
漫谈兼容内核
之十八:Windows的LPC机制
LPC是“本地过程调用(LocalProcedureCall)”的缩写。所谓“本地过程调用”是与“远程过程调用”即RPC相对而言的。其实RPC是广义的,RPC可以发生在不同的主机之间,也可以发生在同一台主机上,发生在同一台主机上就是LPC。所以在Unix语境下就没有LPC这一说,即使发生在同一台主机上也称为RPC。在历史上,RPC是“开放软件基金会(OSF)”设计和提出的一种用以实现“Unix分布
zytju1983
·
2020-08-04 23:03
漫谈兼容内核
Windows的进程创建
漫谈兼容内核
之十七:再谈Windows的进程创建毛德操在漫谈之十中。我根据“MicrosoftWindowsInternals4e”一书第六章的叙述介绍了Windows的进程创建和映像装入的过程。
LQ0622
·
2020-07-29 09:01
内核
漫谈兼容内核
:ReactOS怎样实现系统调用http://www.linuxsir.org/bbs/showthread.php?t=232200
linux.insigma.com.cnLinux兼容内核项目自由论坛:http://linux.insigma.com.cn/devbbs/index.aspLinux兼容内核项目QQ讨论群:15340505
漫谈兼容内核
之一
ydfok
·
2020-07-13 22:06
Windows
数据结构
windows
linux内核
exception
thread
linux
ELF映像的装入
漫谈兼容内核
之八:ELF映像的装入(一)毛德操http://www.longene.org/index.php上一篇漫谈中介绍了Wine的二进制映像装入和启动,现在我们来看看ELF映像的装入和启动。
maimang1001
·
2014-06-27 21:00
漫谈兼容内核
之二十六:Windows的结构化异常处理(三)
用户空间的异常机制是对于系统空间的异常机制的模拟。在内核中,并非所有的异常都是一来就进入“基于SEH框架(Frame-Based)”的异常处理,而是先进入_KiTrap14()等等类似于向量中断的入口,在那里可以被拦截进行一些优先的处理,例如页面换入和对Copy-On-Write页面的处理等等。这些处理是全局性质的,而不属于某个SEH域。这相当于是一层全局性的过滤。只有不属于这个层次的异常才会进入
cosmoslife
·
2013-05-03 10:04
漫谈兼容内核
漫谈兼容内核
之二十五:Windows的结构化异常处理(二)
先看调用参数。异常纪录块ExceptionRecord就是前面准备好的;指针ExceptionFrame是NULL,这是个KEXCEPTION_FRAME结构指针,但是从代码中看这只是为PowerPC芯片而设的,用于保存一些附加寄存器的内容,386架构的处理器芯片无此要求;而陷阱框架指针Tf指向堆栈上因异常而形成的框架,我们在前面倒是称之为“异常框架”。此外,PreviousMode为Kernel
cosmoslife
·
2013-05-03 10:45
漫谈兼容内核
漫谈兼容内核
之二十一:Windows进程的用户空间
进程的用户空间是应用软件活动的舞台,所以搞清楚Windows进程用户空间的格局和轮廓对于深入理解Windows进程的运行有着重要的意义。而对于兼容内核的开发者,则这个问题更是非搞清楚不可,因为开发兼容内核的意图就是要让Windows应用软件得以在Linux系统上运行。其实,在前面的一些漫谈中,随着当时话题的开展也曾讲到过有关这个问题的一些大概,但是一方面只是散见于各处,不够集中;另一方面也不够系统
cosmoslife
·
2013-05-03 10:58
漫谈兼容内核
漫谈兼容内核
之五:Kernel-win32的系统调用机制
正如许多网友所言,要在Linux内核中实现Windows系统调用(或别的系统调用),最简单的办法莫过于把这些系统调用“搭载”在Linux系统调用上。具体又有几种不同的方法:1.为Linux系统调用ioctl()增加一些“命令码”,每个新的命令码都代表着一个Windows系统调用。2.为Linux增加一个新的系统调用、例如win32_syscall()、作为总的入口和载体,然后定义一些类似于ioct
cosmoslife
·
2013-05-02 18:39
漫谈兼容内核
漫谈兼容内核
之十八:Windows的LPC机制
LPC是“本地过程调用(LocalProcedureCall)”的缩写。所谓“本地过程调用”是与“远程过程调用”即RPC相对而言的。其实RPC是广义的,RPC可以发生在不同的主机之间,也可以发生在同一台主机上,发生在同一台主机上就是LPC。所以在Unix语境下就没有LPC这一说,即使发生在同一台主机上也称为RPC。在历史上,RPC是“开放软件基金会(OSF)”设计和提出的一种用以实现“Unix分布
cosmoslife
·
2013-05-02 17:36
驱动开发学习
Windows编程
Windows线程的系统空间堆栈
漫谈兼容内核
之二十:Windows线程的系统空间堆栈毛德操在计算机技术的发展史上,堆栈的发明有着划时代的意义。从那以后,实际上已经不再存在可以脱离堆栈而运行的程序。
airrun
·
2013-02-17 19:38
windows
线程
堆栈
系统空间
经典网文:ELF映像的装入
漫谈兼容内核
之八:ELF映像的装入(一)上一篇漫谈中介绍了Wine的二进制映像装入和启动,现在我们来看看ELF映像的装入和启动。
wbd880419
·
2011-09-28 10:00
漫谈兼容内核
之一:ReactOS怎样实现系统调用
漫谈兼容内核
之一:ReactOS怎样实现系统调用 毛德操 有网友在论坛上发贴,要求我谈谈ReactOS是怎样实现系统调用的。
jhui163
·
2010-12-04 11:00
thread
数据结构
windows
exception
null
linux内核
Windows的进程创建
漫谈兼容内核
之十七:再谈Windows的进程创建毛德操 在漫谈之十中。我根据“MicrosoftWindowsInternals4e”一书第六章的叙述介绍了Windows的进程创建和映像装入的过程。
tcdddd
·
2010-05-11 13:00
thread
数据结构
windows
null
Parameters
attributes
漫谈兼容内核
之一:ReactOS怎样实现系统调用
漫谈兼容内核
之一:ReactOS怎样实现系统调用毛德操有网友在论坛上发贴,要求我谈谈ReactOS是怎样实现系统调用的。
b2b160
·
2009-06-16 10:00
thread
数据结构
windows
exception
null
linux内核
漫谈兼容内核
之五:Kernel-win32的系统调用机制
正如许多网友所言,要在Linux内核中实现Windows系统调用(或别的系统调用),最简单的办法莫过于把这些系统调用“搭载”在Linux系统调用上。具体又有几种不同的方法: 1.为Linux系统调用ioctl()增加一些“命令码”,每个新的命令码都代表着一个Windows系统调用。 2.为Linux增加一个新的系统调用、例如win32_syscall()、作为总的入口和载体,然后定义一些类似
zytju1983
·
2009-03-13 00:00
thread
数据结构
windows
linux
struct
linux内核
漫谈兼容内核
之四:Kernel-win32的进程管理
由于进程管理与对象管理不可分割,我在谈论Kernel-win32的对象管理时也谈到了一些有关进程管理的内容,例如对task_struct数据结构的扩充,以及对Linux内核有关代码所打的补丁。但是这还不够,还需要进一步讨论。 对于任何现代操作系统而言,进程(线程)管理都是一个十分重要的环节。Windows与Linux在这方面恰恰有着相当大的差异,有的是概念上的,有的是实现细节上的:1.在
zytju1983
·
2009-03-13 00:00
thread
数据结构
windows
linux
struct
linux内核
漫谈兼容内核
之十一:Windows DLL的装入和连接
在PE映像的装入和启动过程中,DLL的装入和连接是一个重要的环节。读者在上一篇漫谈中看到,Windows的DLL装入(除ntdll.dll外)和连接是通过ntdll.dll中的一个函数LdrInitializeThunk()实现的。在Wine中,这个环节也是通过一个同名的函数实现的,只不过这个函数不在ntdll.dll中,而是wine-kthread里面的一个函数。在ReactOS中则同样也是L
zytju1983
·
2009-03-13 00:00
数据结构
windows
image
Module
dll
import
漫谈兼容内核
之十五:Windows线程的等待/唤醒机制
对于任何一个现代的操作系统,进程间通信都是不可或缺的。 共享内存区显然可以用作进程间通信的手段。两个进程把同一组物理内存页面分别映射到各自的用户空间,然后一个进程往里面写,另一个进程就可以读到所写入的内容。所以,共享内存区天然就是一种进程间通信机制。但是这又是很原始的手段,因为这里有个读出方如何知道共享区的内容已经被写入方改变的问题。轮询,或者定期轮询,当然也是个办法,但是一般而言效率毕竟太低
zytju1983
·
2009-03-13 00:00
漫谈兼容内核
之十四:Windows的跨进程操作
JeffreyRichter在他的“AdvancedWindows”一书第18章“打破进程壁垒(BreakingThroughProcessBoundaryWalls)”中讲述了一个有趣的实验,就是利用OpenProcess()、CreateRemoteThread()、VirtualAllocEx()、WriteProcessMemory()等等Win32API函数从一个进程向另一个进程的用户
zytju1983
·
2009-03-13 00:00
thread
数据结构
windows
linux
null
attributes
漫谈兼容内核
之十三:关于“进程挂靠”
上一篇漫谈在介绍APC机制时提到:线程在Windows内核中运行时有时候需要暂时“挂靠(Attach)”到别的进程的用户空间,即暂时切换到另一个进程的用户空间。这称为“进程挂靠”,因为用户空间是一个进程最主要的特征。 显然,要是当前线程的操作与用户空间无关、不需要访问用户空间,那么当时的用户空间到底是谁的用户空间根本就无关紧要,所以这必定发生在与用户空间有关的操作中。 一般而言,如果线
zytju1983
·
2009-03-13 00:00
thread
数据结构
object
null
attributes
linux内核
漫谈兼容内核
之十七:再谈Windows的进程创建
在漫谈之十中。我根据“MicrosoftWindowsInternals4e”一书第六章的叙述介绍了Windows的进程创建和映像装入的过程。但是,由于缺乏源代码的支撑,这样的叙述对于只是想对此有个大致了解的读者固然不无帮助,可是对于需要实际从事研发、特别是兼容内核开发的读者就显得过于抽象笼统了。不幸,Windows内核的代码是不公开的,我们无法通过Windows内核的代码来确切地了解和理
zytju1983
·
2009-03-13 00:00
漫谈兼容内核
之十六:Windows的进程间通信
对于任何一个现代的操作系统,进程间通信都是其系统结构的一个重要组成部分。而说到Windows的进程(线程)间通信,那就要看是在什么意义上说了。因为正如“Windows的跨进程操作”那篇漫谈中所述,在Windows上一个进程甚至可以“打开”另一个进程,并在对方的用户空间分配内存、再把程序或数据拷贝过去,最后还可以在目标进程中创建一个线程、让它为所欲为。显然,这已经不只是进程间的“通信”,而是进程间
zytju1983
·
2009-03-13 00:00
thread
数据结构
windows
Semaphore
null
buffer
漫谈兼容内核
之十八:Windows的LPC机制
LPC是“本地过程调用(LocalProcedureCall)”的缩写。所谓“本地过程调用”是与“远程过程调用”即RPC相对而言的。其实RPC是广义的,RPC可以发生在不同的主机之间,也可以发生在同一台主机上,发生在同一台主机上就是LPC。所以在Unix语境下就没有LPC这一说,即使发生在同一台主机上也称为RPC。在历史上,RPC是“开放软件基金会(OSF)”设计和提出的一种用以实现“Unix分
zytju1983
·
2009-03-13 00:00
漫谈兼容内核
之十九:Windows线程间的强相互作用
在现代的计算机系统中,一项作业(Job)往往需要多个进程或线程的协作,而操作系统则要为进程或线程间的协作提供基础设施和机制上的支持。操作系统、特别是内核,提供什么样的设施和手段,系统中的进程之间和线程之间就会有什么样的相互作用。如果把一个系统比作一个社会,那么系统中的进程和线程就好像是社会中的成员。成员的行为和成员之间的关系有其“社会性”的一面、即互相影响的一面。例如一个线程的调度优先级就
zytju1983
·
2009-03-13 00:00
漫谈兼容内核
之十二:Windows的APC机制
前两篇漫谈中讲到,除ntdll.dll外,在启动一个新进程运行时,PE格式DLL映像的装入和动态连接是由ntdll.dll中的函数LdrInitializeThunk()作为APC函数执行而完成的。这就牵涉到了Windows的APC机制,APC是“异步过程调用(AsyncroneusProcedureCall)”的缩写。从大体上说,Windows的APC机制相当于Linux的Signal机制,实
zytju1983
·
2009-03-13 00:00
漫谈兼容内核
之七:Wine的二进制映像装入和启动
上一篇漫谈中介绍了几种二进制可执行映像的识别方法,而识别的目的当然是为了要装入并启动这些映像的执行。映像的装入和启动一般总是和创建进程相连系,所以本来就是个相当复杂的过程。而对于Wine,则在进程创建方面又增添了一些额外的复杂性。 为什么呢?我们这样来考虑:在Windows或ReactOS中,创建进程是由CreateProcessW()完成的,系统中的“始祖”进程就是个Windows进程,代代
zytju1983
·
2009-03-13 00:00
漫谈兼容内核
之九:ELF映像的装入(二)
上一篇漫谈介绍了在通过execve()系统调用启动一个ELF格式的目标映像时发生于Linux内核中的活动。简而言之,内核根据映像头部所提供的信息把目标映像映射到(装入)当前进程用户空间的某个位置上;并且,如果目标映像需要使用共享库的话,还要(根据映像头部所提供的信息)将所需的“解释器”的映像也映射到用户空间的某个位置上,然后在从系统调用返回用户空间的时候就“返回”到解释器的入口,下面就是解释器的
zytju1983
·
2009-03-13 00:00
数据结构
c
unix
header
table
library
漫谈兼容内核
之八:ELF映像的装入(一)
上一篇漫谈中介绍了Wine的二进制映像装入和启动,现在我们来看看ELF映像的装入和启动。 一般而言,应用软件的编程不可能是“一竿子到底”、所有的代码都自己写的,程序员不可避免地、也许是不自觉地、都会使用一些现成的程序库。对于C语言的编程,至少C程序库是一定会用到的。从编译/连接和运行的角度看,应用程序和库程序的连接有两种方法。一种是固定的、静态的连接,就是把需要用到的库函数的目标(二进制)代码从
zytju1983
·
2009-03-13 00:00
数据结构
struct
user
header
search
linux内核
漫谈兼容内核
之二十六:Windows的结构化异常处理(三)
用户空间的异常机制是对于系统空间的异常机制的模拟。在内核中,并非所有的异常都是一来就进入“基于SEH框架(Frame-Based)”的异常处理,而是先进入_KiTrap14()等等类似于向量中断的入口,在那里可以被拦截进行一些优先的处理,例如页面换入和对Copy-On-Write页面的处理等等。这些处理是全局性质的,而不属于某个SEH域。这相当于是一层全局性的过滤。只有不属于这个层次的异常才会进
zytju1983
·
2009-03-13 00:00
漫谈兼容内核
之二十五:Windows的结构化异常处理(二)
先看调用参数。异常纪录块ExceptionRecord就是前面准备好的;指针ExceptionFrame是NULL,这是个KEXCEPTION_FRAME结构指针,但是从代码中看这只是为PowerPC芯片而设的,用于保存一些附加寄存器的内容,386架构的处理器芯片无此要求;而陷阱框架指针Tf指向堆栈上因异常而形成的框架,我们在前面倒是称之为“异常框架”。此外,PreviousMode为Kerne
zytju1983
·
2009-03-13 00:00
漫谈兼容内核
之二十四:Windows的结构化异常处理(一)
结构化异常处理(StructuredExceptionHandling),简称SEH,是Windows操作系统的一个重要组成部分。在ReactOS内核的源代码中,特别是在实现系统调用的代码中,读者已经看到很多类似于这样的代码: if(MaximumSize!=NULL&&PreviousMode!=KernelMode) { _SEH_TRY { ProbeForR
zytju1983
·
2009-03-13 00:00
漫谈兼容内核
之二:关于kernel-win32的对象管理
近来屡有网友提到一个旨在将Wineserver移入内核的开源项目kernel-win32;有问及其本身,希望能对其代码作一些分析、讲解的,也有问及兼容内核与此项目之间关系的。所以从这篇漫谈开始就来谈谈kernel-win32。首先,兼容内核项目应当从所有(能找到的)相关开源项目吸取营养,有时候甚至就采取“拿来主义”,反正都是开源项目,只要遵守有关的规定就行。从这个意义上说,我们对于kernel-w
zytju1983
·
2009-03-13 00:00
漫谈兼容内核
之三:Kernel-win32的文件操作
上一篇漫谈中分析/介绍了Kernel-win32的对象管理机制。在各种对象类型中,文件显然是最重要、最复杂(就其操作而言)的类型。如果说像“信号量”之类的简单对象还有可能独立地加以实现,那么像文件这样的复杂对象这就不太现实,并且实际上也不合适了。所以,本文的目的就是通过几个典型文件操作的实现介绍kernel-win32是怎样把Windows用于文件操作的系统调用“嫁接”到Linux内核中的有关成
zytju1983
·
2009-03-13 00:00
漫谈兼容内核
之十:Windows的进程创建和映像装入
关于Windows的进程创建和映像装入的过程,“MicrosoftWindowsInternals4e”一书的第六章中有颇为详细的说明。本文就以此为依据,夹译、夹叙、夹议地作一介绍。书中说,创建进程的过程分成六个阶段,发生于操作系统的三个部分中,那就是:Windows客户端即某个应用进程的包括Kernel32.dll在内的动态连接库,Windows的“执行体”、即内核(确切地说是内核的上层),
zytju1983
·
2009-03-13 00:00
漫谈兼容内核
之二十一:Windows进程的用户空间
进程的用户空间是应用软件活动的舞台,所以搞清楚Windows进程用户空间的格局和轮廓对于深入理解Windows进程的运行有着重要的意义。而对于兼容内核的开发者,则这个问题更是非搞清楚不可,因为开发兼容内核的意图就是要让Windows应用软件得以在Linux系统上运行。其实,在前面的一些漫谈中,随着当时话题的开展也曾讲到过有关这个问题的一些大概,但是一方面只是散见于各处,不够集中;另一方面也不够系
zytju1983
·
2009-03-13 00:00
漫谈兼容内核
之二十三:关于TLS
TLS是“线程局部存储(ThreadLocalStorage)”的缩写,“Local”这个词有“局部”、“本地”的意思,所以也可以说是“线程本地存储”。顾名思义,这就是局部于唯一的线程、为具体线程所“私用、专用”的存储空间。这里所说的“空间”并不是“用户空间”、“系统空间”那个意义上的空间,而是指用户空间中个别变量、数组、或数据结构所占据的存储空间。 我们知道,线程并不独立拥有用户空间,用户空
zytju1983
·
2009-03-13 00:00
thread
数据结构
struct
Module
存储
dll
漫谈兼容内核
之二十二:Windows线程的调度和运行
了解Windows线程的系统空间堆栈以后,还有必要对Windows线程的调度、切换、和运行也有所了解。当然,就兼容内核的开发而言,内核的线程调度/切换/运行机制只能有一套,而且必定是基本上沿用Linux的这套机制,而不可能在一个内核中有两套调度/运行机制。但是对于Windows这套机制的了解对于兼容内核的开发也很重要,并且还是必须的。举例来说,大家都知道在Windows系统中段寄存器FS在用户空
zytju1983
·
2009-03-12 23:00
漫谈兼容内核
:ReactOS怎样实现系统调用http://www.linuxsir.org/bbs/showthread.php?t=232200
linux.insigma.com.cnLinux兼容内核项目自由论坛:http://linux.insigma.com.cn/devbbs/index.aspLinux兼容内核项目QQ讨论群:15340505
漫谈兼容内核
之一
ydfok
·
2008-02-25 22:00
thread
数据结构
windows
exception
linux
linux内核
上一页
1
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他