zoukankan      html  css  js  c++  java
  • Linux 进程详解

    Linux内核的七大区间
    1.进程管理(进程创建,进程的三种状态,进程间的调度,调度算法...)
    2.内存管理(段式管理(Linux所有段都从0开始),页式管理--地址偏移量)
    3.系统调用(C语言库函数的区别)
    4.网络协议(TCP/IP协议)
    5.UFS--虚拟文件系统==》Linux驱动总线模型
    6.驱动管理(网络设备,块设备,字符设备...)
    7ARCH(对各个硬件平台的支持...RAM x86 power pc)
    进程数据结构
    进程的静态描述:由三部分组成:PCB,有关程序段和该程序段对其进行操作的数据结构集
    进程控制块(PCB):用于描述进程情况及控制进程运行所需的全部信息
    代码段:是进程中能被进程调度程序在CPU上执行的程序代码段。
    数据段:一个进程的数据段,可以是进程对应的程序加工处理的原始数据,也可以是程序执行后产生的中间或最终数据
    进程是操作系统对资源的一种抽象:一个进程:代码段、数据段,堆栈段(内存四区)+进程控制块(PCB)
    PCB是操作系统感知进程存在的一个重要数据结构。
    fork函数和vfork函数
    vfork()函数有个限制,子进程必须立刻执行_exit或者exec函数,
    即使fork实现了copy on write,效率也没有vfork高,但是我们不推荐使用vfork,因为几乎每一个vfork的实现,
    都或多或少存在一定的问题 结论:
    1.fork子进程会写时拷贝父进程的数据段;vfork子进程与父进程共享数据段 2.fork父子进程的执行次序不确定;vfork子进程先运行,父进程后运行
    vfork和exec函数在一起
    execve替换进程映像(加载程序),注意execve是一个系统调用;替换意味着:代码段,数据段,堆栈段,进程控制块PCB全部替换
  • 相关阅读:
    dll反编译工具(ILSpy)的使用
    织梦CMS进入自定义表单界面查看数据
    SQL -注释方法
    SQL之CASE WHEN用法详解
    Windows Installer Clean Up 软件卸载工具下载
    【精华合辑】金蝶云BOS资料合辑
    报表二次开发添加自定义字段的指导方案
    怎样选购笔记本内存条?
    SQL Server 2008修改sa密码的详细方法
    VS 2015 2019注册码
  • 原文地址:https://www.cnblogs.com/zhanggaofeng/p/6063403.html
Copyright © 2011-2022 走看看