我必须实现一个字符设备,一个LKM。用户到内核模式的大图?
我知道一些关于操作系统的基础知识,但我觉得我没有大局。
在一个C程序中,当我调用一个系统调用时,我认为它发生的是将CPU更改为ring0,然后进入系统调用向量并跳转到处理它的内核存储器空间函数。 (我认为它的int 0x80和eax是系统调用向量的偏移量,不确定)。然后,我在系统调用本身,但我猜对于内核是以前的相同的过程,只是它在内核模式,我的意思是当前的PCB是调用系统调用的过程。
到目前为止......这么好?,纠正我,如果有什么错误。
其他问题......如何在过程内存中写入/读取? 如果在系统调用处理程序中,我指的是地址,比如0xbfffffff。这意味着什么地址?物理的吗?一些虚拟内核之一?
我的意思是,如果我在内核空间的系统调用句柄中引用0xbfffffff。这意味着什么地址 – fsdfa 2010-05-30 08:03:33