现在的位置: 首页 > 综合 > 正文

操作系统概念学习笔记一 进程

2013年05月27日 ⁄ 综合 ⁄ 共 1187字 ⁄ 字号 评论关闭
1 作业与进程的区别
进程和作业的概念也有区别.一个正在执行的进程称为一个作业,而且作业可 以包含一个或多个进程,尤其是当使用了管道和重定向
命令.例如“nroff -man ps.1|grep kill|more”这个作业就同时启动了三个进程.
2 进程控制块PCB
进程状态
程序计数器
CPU寄存器
CPU调度信息内存管理信息
计账信息 包括cpu时间、实际使用时间、时间界限、记账数量、作业或进程数量
I/O状态信息
3 调度队列
进程进入系统时,会被加入到作业队列中,该队列包括系统中的所有进程。
驻留在内存中就需的等待运行的进程保存在就需队列表中。该队列通常用链表的形式来存储,其头节点包括指向链表的第一个和最
后一个PCB块的指针。
设备队列
进程调度的常用表示方法是队列图。
4 调度程序
进程在其生命周期中会在各种调度队列之间迁移,操作系统为了调度的目的,必须按某种方式从这些队列中选择进程。进程选择是
由相应的调度程序来完成的。
短期调度程序(CPU调度程序)与长期调度程序(作业调度程序)的区别:
a 执行频率的不同,短期调度程序必须频繁的地为cpu选择新进程。
b 长期调度程序能使用更多的时间来选择进程
进程通常可分为:I/O为主或CPU为主
为了得到最好性能,系统需要一个合理的CPU为主和I/O为主的进程组合。
UNIX通常没有长期调度程序
UNIX中的中期调度程序  交换  将暂时不运行的进程移除内存,当需要执行的时候再加载到内存中。
5 上下文切换
将CPU切换到另一个进程需要保存原来进程的状态并装入新进程的保存状态,这一任务称为上下文切换。
进程关联是由PCB来表示的,它包括CPU寄存器的值、进程状态和内存管理信息。当发生上下文切换时,内核会将旧进程的关联状态
保存在其PCB中,然后装入经调度要执行的新进程的已保存的关联状态。
6 进程间通信
逻辑实现线路和发送/接收操作的方法
直接或间接通信
对称或非对称通信
自动或显示缓冲
复制发送或引用发送
固定大小或可变大小消息
直接通信:
send(P,message);
receive(id,message);
间接通信:
send(A,message);
receive(A,message);A表示邮箱
7 缓冲
不管通信时直接的或间接地,通信进程所交换的信息都驻留在临时队列中,简单来说,队列实现有三种方法
a 零队列:队列的最大长度为0,因为,线路中不能有任何消息处于等待,对于这种情况,发送者必须阻塞,知道接收者接收到消息
b 有限容量
c 无限容量
8 套接字
套接字(socket)可定义为通信的端点,一对通过网络通信的进程需要使用一对套接字,即每个进程各有一个。套接字由IP地址和
端口号连接组成。通常,套接字采用客户机-服务器结构。服务器通过监听指定端口来等待进来的客户机请求。一旦收到请求,服务
器就接受来自客户机套接字的链接,从而完成连接。
所有的链接都是唯一的。
9 远程过程调用RPC
10 远程方法调用

抱歉!评论已关闭.