摘要: 1.进程、用户线程、内核线程的区别和联系进程用户线程(轻量级进程)内核线程代码段有有有数据段有有有描述符task_struct有有有用户空间堆栈有一个线程组共享一个用户空间完全没有内核空间堆栈有有有PID独一无二的一组线程共享一个有这里的有是指拥有独立的2.内核线程:由内核创建、调度,用于执行一些重要的、周期性的过程。只运行在内核态、只使用3G以后的系统空间。比如用于回收物理页面的kswapd线程3.进程的状态(1)就绪或运行(2)可中断的等待(3)不可中断的等待(4)暂停(5)跟踪(6)僵死(见Linux2.6进程的创建与删除)(7)僵死撤消4.进程描述符与进程之间是严格的一一对应5.内核态 阅读全文
posted @ 2012-05-21 22:13 windmissing 阅读(221) 评论(0) 推荐(0)
摘要: 0.sys_open()(1)从当前进程的“打开文件表”中找到一个空闲的项get_unused_fs()(2)建立文件读写的上下文filp_open():(见1)(3)将上下文安装到文件打开表中1.filp_open():建立文件读写的上下文(1)获取指向文件名的dentry和vfsmount:open_namei()若只是打开,则通过path_init()和path_walk()搜索若有不存在就创建的要求,则(见3)3.获取指向文件名的dentry和vfsmount,若不存在就创建(1)找到path_name对应的节点的父dentry(2)找到目标文件的dentry(3)若不存在,则创建de 阅读全文
posted @ 2012-05-21 09:49 windmissing 阅读(227) 评论(0) 推荐(0)