C语言并发程序设计

进程的概念

程序:

  存放在磁盘上的指令和数据的有序集合(文件)

  静态的

进程:

  执行一个程序所分配的资源的总称

  进程是程序的一次执行过程

  动态的,包括创建、调度、执行和消亡

进程包含的内容

进程包含:正文段(代码段)、用户数据段、系统数据段

程序包含:正文段(代码段)、用户数据段

系统数据包含:进程控制块、CPU寄存器值、堆栈

  进程控制块(PCB)包含:

    进程标识PID

    进程用户

    进程状态、优先级

    文件描述符表

  CPU寄存器值:

    PC:program counter, 记录着下一条执行指令的地址

  堆栈:所有的局部变量都是在栈中存在的

进程的类型

交互进程:在shell下启动。可以在前台运行,也可以在后台运行

批处理进程:和在终端无关,被提交到一个作业队列中以便顺序执行

守护进程:和终端无关,一直在后台运行 

进程的状态

运行态:进程正在运行,或者准备运行

等待态:进行在等待一个事件的发生或某种系统资源,又分为可中断和不可中断

停止态:进程被中止,收到信号后可继续运行

死亡态:已终止的进程,但pcb没有没有被释放

查看进程信息

ps:查看系统进程快照

top

/proc

前后台进程切换

改变进程优先级

相关推荐