`

Chapter 8__进程控制

    博客分类:
  • APUE
阅读更多
//一些函数:
pid_t getpid(void);   
pid_t getppid(void);  
                      
gid_t getgid(void);   
gid_t getegid(void);  
                      
uid_t getuid(void);   
uid_t geteuid(void); 

pid_t fork(void)
                    |- p getpid() = id_1     fork = 非零(id_2)
main() id_1 - fork -|
                    |- c getpid() = id_2     fork = 零

pid_t wait(int *status);
pid_t waitpid(pid_t pid, int *status, int options);




8.2 进程标识符:
pid = 0,调度、交换、系统进程(swapper)
pid = 1,init进程
pid = 2,页守护进程(pagedaemon)


8.3 父子进程共享:共享正文段,不共享存储空间
fork后执行exec
Copy-On-Write,COW 写时复制。当两个进程共享一份数据时,其中一个

8.5 父子进程先后结束情况:
1、父进程先结束,子进程将由init进程领养,确保每个进程都有父亲;

2、子进程先结束,父进程可以调用wait或waitpid,获取子进程遗言;

3、子进程成为zombie的条件是:
    父进程未为其收尸,没有调用wait或waitpid没有释放资源;

4、init进程很勤劳,它的子进程一旦over,就调用wait,
    以确保它的儿子不会成为zombie为害他人~


8.6 wait and waitpid (wait是waitpid的封装高级版)
1、没有子进程时,调用wait会立即出错;

2、有子进程时,分两种情况:
    2.1、子进程仍在运行中,则阻塞;
    2.2、子进程over,则取得子进程的终止状态;

3、P182有更详细的说明。

介绍wait和waitpid的链接:
http://hi.baidu.com/qiaoyongfeng/blog/item/3d6fc100bcf93e17738b6576.html/cmtid/f128133be8b211e715cecbad

守护进程 孤儿进程 僵尸进程:
http://blog.csdn.net/ssky87/archive/2010/10/08/5927679.aspx
进程间的战争如何解决。
exec函数族

分享到:
评论

相关推荐

    chapter5_i

    这包括用户账户管理、权限控制(如用户权限、组权限)、访问控制列表(ACLs)以及安全模型(如 Biba、Bell-LaPadula 等)。 6. 网络与通信:如果"orange"与网络有关,那么第五章可能涵盖操作系统如何支持网络通信,...

    chapter3_进程间通信(2019_Ad_OS)1

    这些状态之间的转换是由操作系统内核根据资源需求和调度策略来控制的。 3. **消息传递**: - 消息传递是进程间通信的一种方式,通过发送和接收消息来实现数据交换。它可以分为直接通信(如管道、信号量、共享内存...

    chapter6_linux_

    在本压缩包文件"chapter6_linux_"中,包含的是《Linux内核API完全参考手册》第六章节的实例源代码。这个资源对于想要深入理解Linux内核API和系统调用的开发者来说是极其宝贵的。第六章节可能涉及了Linux操作系统中的...

    chapter10_linux_

    在本章"chapter10_linux_"中,我们深入探讨了Linux内核API的高级主题,这些API对于系统级编程和内核开发至关重要。《Linux内核API完全参考手册》是学习这一领域的宝贵资源,它提供了丰富的实例源代码,帮助读者理解...

    CHAPTER 2_VHDL_Code_vhdl_

    此外,熟悉VHDL的编程结构,如进程(process)、实体(entity)、架构(architecture)以及如何使用控制流结构(如loop)也至关重要。对于电子工程和计算机科学的学生,熟练掌握这些概念和技巧是深入理解和设计数字...

    Delphi - Messages (chapter)_DELPHIMESSAGES_MSSages_

    8. **消息过滤与消息钩子**:通过安装消息钩子(Message Hooks),开发者可以拦截和处理其他线程或进程中的消息,这在跨进程通信和调试中非常有用。 9. **多线程消息处理**:在多线程环境中,正确处理消息以避免...

    ENetwork_Chapter7_-_CCNA_Exploration_网络基础知识.docx

    逻辑拓扑和应用进程不直接影响这一层面的决策,而中间设备的功能可能会影响介质访问控制的实现。 6. 正确的介质访问控制陈述包括:以太网采用CSMA/CD,是一种竞争性的非确定性访问;802.11(无线局域网标准)不使用...

    chapter1_7.zip

    《Orange's操作系统》一书是深入理解操作系统原理的重要参考资料,其相关的资源压缩包"chapter1_7.zip"包含了从第一章到第七章的材料,这些章节通常涵盖了操作系统的基础概念、设计原理以及实现技术。在Ubuntu虚拟机...

    计算机操作系统原理_Chapter01_概述.pdf

    计算机操作系统原理_Chapter01_概述 本章节内容主要介绍了计算机操作系统的基本概念、发展历程、功能、特征和作用、体系结构,以及现代典型操作系统。通过对操作系统的形成与发展的介绍,了解操作系统的功能划分、...

    Chapter_7_Exchange_2003服务器的配置

    ### Chapter_7_Exchange_2003服务器的配置 #### 知识点概述 本文主要探讨Microsoft Exchange Server 2003中的服务器配置过程及其关键功能。Microsoft Exchange Server 2003是一款广泛用于企业级电子邮件服务的软件...

    Chapter2_2021.ppt

    传输层服务是应用层可以使用的服务,提供可靠的数据传输、流量控制、拥塞控制等功能。传输层服务的类型包括 TCP 和 UDP,TCP 提供可靠的连接式服务,而 UDP 提供不可靠的无连接式服务。 进程与传输层接口 进程是...

    Chapter5_操作系统支持(2019AD_OS)1

    操作系统创建了一个虚拟环境,使得多个进程可以在同一硬件上并行运行,每个用户都有控制系统的错觉。为了实现这一目标,操作系统通常采用双层访问权限,操作系统本身拥有对所有资源的完全访问权限,而用户进程则受到...

    操作系统原理_Chapter02_操作系统的结构和硬件支持(上).pdf

    操作系统是计算机系统的核心,它负责管理和控制计算机的硬件资源,同时为用户提供友好的接口,使得用户能够方便地进行各种计算和数据处理。本章主要讨论了操作系统的结构和硬件支持,特别是操作系统虚拟机、指令系统...

    信息通信网络概论课件:Chapter_2__Application_and_Layered_Architectures.ppt

    本章"Chapter 2 - Application and Layered Architectures"深入探讨了这一主题,旨在提供一个全面的视角,帮助学习者掌握通信过程中的核心概念。 首先,我们关注的是**OSI七层参考模型**(2.1 The OSI Reference ...

    JAVA课件_chapter8-network

    从给定的文件信息来看,标题“JAVA课件_chapter8-network”以及描述“JAVA_JAVA课件_chapter8-network”表明这份文档是关于Java编程语言中的网络编程章节的课件资料。虽然部分内容由于编码问题无法正常显示,但从...

    计算机网络英文课件:Chapter_3 Transport Layer.ppt

    Chapter_3 Transport Layer.ppt这份课件主要涵盖了这些关键概念,并对互联网中的两种主要传输协议——无连接的UDP和面向连接的TCP进行了深入探讨。 **3.1 传输层服务** 传输层服务的目标是为应用层提供逻辑通信,...

    DIY_OS_chapter6.rar_写操作系统_操作系统

    8. **网络支持**:现代操作系统通常提供网络功能,如TCP/IP协议栈,支持套接字编程,使应用程序能够进行网络通信。 9. **用户接口**:操作系统提供图形用户界面(GUI)和命令行界面(CLI)供用户交互,如Windows的...

    acm.rar_ACM

    - 控制转移指令:如JMP、CALL、RET,用于程序流程控制。 - 输入输出指令:IN和OUT,用于CPU与外部设备之间的通信。 3. **汇编语言程序格式** (chapter4_1汇编语言程序格式3.ppt, chapter4_2汇编语言程序格式4.ppt...

    操作系统课件:Chapter-02进程管理

    2. **进程控制**:操作系统通过进程控制块(PCB)来管理和控制进程。PCB包含描述进程状态和执行所需的所有信息,例如进程ID、内存映射、上下文信息、权限等。操作系统依据PCB对进程进行调度和切换。 3. **进程同步*...

    Exploration_Network_Chapter_4 OSI 传输层.ppt

    本章重点介绍了传输层的两大协议:传输控制协议(TCP)和用户数据报协议(UDP),以及它们各自的特点和应用场景。 4.1 传输层的作用至关重要,其主要任务包括跟踪每个会话、数据分段、重组数据段以及标志应用程序。...

Global site tag (gtag.js) - Google Analytics