- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
10.2、10.6 UNIX进程管理和文件系统
UNIX进程管理 * 第二章 进 程 管 理 1. UNIX系统的发展史 2. UNIX系统的内核结构 进程上下文(或进程映像):进程运行环境所包含的内容; PCB(进程控制块):Proc结构(进程表项)和User结构(U区)组成 PCB常驻内存,系统对进程的感知和管理依赖PCB 正文段:进程的程序代码和使用常量,该部分可以被其他进程共享; 数据段:进程的私有信息(私有数据和程序),只有本进程可以访问; 系统栈:进程在系统执行时完成 子程序的嵌套和中断处理 时使用的信息保留区; 用户栈:进程在用户态执行时完成 子程序的嵌套和中断处理 时使用的信息保留区; 3. UNIX进程描述 1. 进程表项(Process Table Entry) 进程标识符(PID)。 (2) 用户标识符(UID)。 (3) 进程状态。 (4) 事件描述符。 (5) 进程和U区在内存或外存的地址。 (6) 软中断信息。 (7) 计时域。 (8) 进程的大小。 (9) 偏置值nice。 (10) P-Link指针。 (11) 指向U区进程正文、 数据及栈在内存区域的指针。 2. U区(U Area) 进程表项指针。 (2) 真正用户标识符u-ruid(real user ID)。 (3) 有效用户标识符u-euid(effective user ID)。 (4) 用户文件描述符表。 (5) 当前目录和当前根。 (6) 计时器。 (7) 内部I/O参数。 (8) 限制字段。 (9) 差错字段。 (10) 返回值。 (11) 信号处理数组。 3. 系统区表(System Region Table) 区的类型和大小。 (2) 区的状态。 (3) 区在物理存储器中的位置。 (4) 引用计数。 (5) 指向文件索引结点的指针。 4. 本进程区表(Per Process Region Table) 图 10-2 进程区表项、系统区表项和区的关系 图 10-3 进程的数据结构 4. UNIX进程状态 进程创建实例 #include stdio.hint myvar=0;void main(){ int pid; pid = fork(); //system call if (pid 0 ) { //error occurred printf(“fork failed.”); exit(-1); //system call } else if (pid == 0 ) { //child process printf(“child process executing…\n”); myvar = 1; } else { //parent process wait(); //system call, wait for children completion printf(“child complete.”); myvar ++; printf(“father,myvar=%d”,myvar); exit(0); }} 进程创建实例 UNIX文件系统结构 文件系统的安装 mount UNIX文件系统结构 UNIX文件系统结构 目录文件 超级块内容 i节点的数据结构 文件检索过程 空闲块管理 成组链接法 成组链接法 成组链接法 * * 第二章 进 程 管 理
文档评论(0)