015 复习
复习
● 复习
○ 内核对象 Ring 0 层 使用计数 (HANDLE)
○ 文件 设备(属于设备)IO
○ 进程
○ 进程和进程之间是独立,哪怕父进程和子进程之间也是独立的
○ 惰性 虚拟内存
○ 线程
○ 积极 运行
○ 线程和进程之间是独立的
○ 栈是独立的(数据是独立的)
○ 线程和进程是非独立的
○ 线程 -> 进程的代码
○ 进程 -> 线程又来运行代码
○ 缺了任何一个都会消亡
○ 所有的线程会在进程结束时 消亡
○ 进程在五任何一个线程运行事 消亡 正确的设计
○ 我们的线程应该是自然结束的
○ 内核对象泄露
○ 某一根线程被强行关系,进程还存在时 -> 内存泄漏
○ 如果我想关闭某一条线程
监听
某个文件是否被其他文件访问
○ 在线程自然退出的时候会做什么事情
○ 调用使用过的对象析构函数 -> 可能内存泄漏
死循环
{
监听()
if()
ExitThread();
break;
//之后有其他的逻辑
}
return 0;
主线程的内核对象
在进程推出的时候并未关闭其他的线程中的内核对象
● 解决问题
○ 学了很多的 API ,但是不知道API到底有什么用
○ API是给我们来解决问题的