操作系统

来源:互联网 发布:谭浩强c语言电子书pdf 编辑:程序博客网 时间:2024/06/08 08:19

多线程技术:执行一个应用程序的进程,划分成可以同时进行的线程;

进程:一个和多个线程和相关资源的集合;

线程:可分派的工作单元,包过处理器上下文环境和栈中的自己 的数据区域

进程映象:程序 数据 栈和属性的集合;

进程映象的元素:用户程序,用户数据 ,系统栈(保存参数,过程调用地址,系统调用地址),进程控制块

进程控制块分成三类:进程标志信息

                                    :处理器状态信息

                                    : 进程控制信息

进程的创建过程:给进程分配一个唯一的进程标志符

                             2:给进程分配空间

                             3:初始化进程控制块

                             4:设置正确的链接:操作系统把调度列队保存成链表,然后把新建的的进程放置在就绪或者挂起/就绪链表中

                             5:创建或扩充其他数据结构:操作系统可能为每一个进程保存着一个记账文件,可用于编制账单和进行性能评估

进程的切换分为:中断和陷阱

 中断:当前正在运行的无关的某种类型的外部事件产生,使CPU的控制权发生转移

陷阱:由当前正在运行的进程所产生的错误或者异常是CPU的控制权发生转移;

进程切换的原因:时钟中断

                             :I/O中断

                             :内存失效:处理器访问一个虚拟内存地址,且此地址不在内存单元中,操作系统必须从外存的块中调入内存,在发出内存块的I/O请求之后,操作系统可能会进行一次进程切换,以恢复内一个进程的执行,发生内存失效的进程被至于阻塞态,,当想要的内存块调入内存中时,该进程被置于就绪态。

进程切换需要保存的上下文包过什么:中断可能改变的信息和恢复中断可能恢复的信息

大多数操作系统中中断的发生并不伴随的进程的切换