操作系统 进程_线程
- 格式:pdf
- 大小:1.85 MB
- 文档页数:11


2011年第6期 计算机光盘软件与应用
Computer CD Software and Appl icat ions 工程技术
分布式操作系统中多任务分配与进程线程调度
姚冬 (北京邮电大学。北京100083)
摘要:分布式操作系统中多任务的分配以及任务调度、负载均衡是实现的难点,其中进程和线程是实现任务执行和 分配最重要的概念之一。如何在分布式系统中实现进程与线程的创建以及信息之间的交互是分布式系统设计至关重要的部
分。通过对传统操作系统中进程和线程的实现机理以及比较,进一步论述在分布式操作系统中,如何实现多任务分配,如 何在不同主机的进程间进行分配以及进行负栽均衡。
关键词:分布式系统;多任务调度;进程;线程;负载均衡 中图分类号:TP316.4 文献标识码:A 文章编号:1007—9599(2011)06—0061—02
Multi-task Assignment and Process/Thread Adjustment in
Distribution System
YaoDong
(Beijing University of Posts and TeIec0mmunicati0ns,BeiJing 1 00083,China)
multi—task operating system ̄stribution and task scheduling,load balancing is difficult to achieve,which
processes and threads to achieve the task execution and distilbution of one of the most important coneepts.How to implement a distributed system processes and threads created,and the interaction between the informmion is a vital part of distributed system design.On the traditional operating system processes and threads and to compare the realization of the mechanism.further discussed
2. 进程和线程的管理
例题解析
例 试说明进程和程序之间的区别和联系。
解 进程和程序是既有区别又有联系的两个概念。
进程是动态的,程序是静态的。程序是一组有序的指令集合,是一个静态的概念;进程则是程序及其数据在计算机上的一次执行,是一个动态的集合。离开了程序,进程就失去了存在的意义,但同一程序在计算机上的每次运行将构成不同的进程。程序可看作是电影的胶片,进程可以看作电影院放电影的过程。
一个进程可以执行多个程序,如同一个电影院的一场电影可放映多部影片。
一个程序可被多个进程执行,如同多个影院同时利用一个电影的胶片放映同一部电影。
程序可以长期保存,进程只能存在于一段时间。程序是永久存在的,而进程有从被创建到消亡的生命周期。
例 举例说明多道程序系统失去了封闭性和再现性。
解 例如,有两个循环程序A和B,共享一个变量N。程序A每执行一次时,都要做N:=N+1操作;程序B则每执行一次时,都要执行print(N)操作,然后再将N的值置成“0”。程序A和B在多道程序系统中同时运行。假定某时刻变量N的值为n,可能出现下述三种情况:
N:=N+1 在print(N)和N:=0之前,此时得到N值变化过程为n+1、n+1、0;
N:=N+1 在print(N)和N:=0之后,此时得到N值变化过程为n 、 0 、1;
N:=N+1 在print(N)之后和N:=0之前,此时得到N值变化过程为n、n+1、0。
所以,在A、B程序多次执行过程中,虽然其每次执行时的环境和初始条件都相同,但每次得到的结果却不一定相同。
例 为什么将进程划分成执行、就绪和阻塞三个基本状态
解 根据多道程序执行的特点,进程的运行是走走停停的。因此进程的初级状态应该是执行和等待状态。处于执行状态的进程占用处理机执行程序,处于等待状态的进程正在等待处理机或者等待其它某种事件的发生。但是,当处理机空闲时,并不是所有处于等待状态的进程都能放到处理机上执行,有的进程即使分配给它处理机,它也不能执行,因为它的执行的条件没有得到满足。因此,将等待状态的进程分成两部分,一部分是放在处理机上就能立即执行,这就是就绪的进程;另一部分是仍需等某种事件发生的进程,即使放在处理机上也不能执行的进程,这就是阻塞进程。
操作系统复习题总结
1 第一章 操作系统概述
1. 操作系统主要特征是什么?
操作系统是控制和管理计算机的软、硬件资源,合理地组织计算机的工作流程,以方便用户
使用的程序集合。
2. “操作系统是控制硬件的软件”这一说法确切吗?为什么?
不正确,因为操作系统不仅仅是控制硬件,同时它还控制计算机的软件。
第二章 进程与线程
1. 操作系统中为什么要引入进程的概念?为了实现并发进程之间的合作和协
调,以及保证系统的安全,操作系统在进程管理方面要做哪些工作?①为了
从变化角度动态地分析研究可以并发执行的程序,真实的反应系统的独立性、并发性、
动态性和相互制约,操作系统中不得不引入进程的概念。
②为了防止操作系统及其关键的数据结构受到用户程序破坏,将处理机分为核心态和用
户态。对进程进行创建、撤销以及在某些进程状态之间的转换控制。
2. 假设系统就绪队列中有10个进程,这10个进程轮换执行,每隔300ms轮换
一次,CPU在进程切换时所花费的时 间是10ms,试问系统化在进程切换上
的开销占系统整个时间的比例是多少?就绪队列中有10个进程,这10个进程轮
换执行,每隔进程的运行时间是300ms,切换另一个进程所花费的总时间是10ms,隐刺
系统化在进程切换上的时间开销占系统整个时间的比例是:10//(300+10)=3.2%.
3. 试述线程的特点及其与进程之间的关系。答:线程是进程内的一个相对独立的运
行单元,是操作系统调度和分派的单位。线程只拥有一点必不可少的资源(一组寄存器
和栈),但可以和铜属于一个进程的其他线程共享进程拥有的资源。关系:1>线程是进
程的一部分,是进程内的一个实体;一个进程可以有多个线程,但至少必须有一个线程。
一个线程只能在一个进程的地址空间内活动;2>进程资源的拥有者,同一个进程的多个
线程共享该进程占有的所有资源;3>处理机分配给进程,线程是系统的调度单位。
1. 这种策略一方面照顾了短进程,一个进程如果在100ms运行完毕它将退出系统,更主要的是照顾了I/O量大的进程,进程因I/O进入阻塞队列,当I/O完成后它就进入了高优
进程:是可以并发执行的程序在某个数据集合上的运行过程,是系统进行资源分配和调度的独立单位
线程:指进程中的一条执行路径,是系统进行处理器调度的基本单位,同一个进程中的所有线程共享进程获得的主存空间和资源
进程和线程比较:1调度性:线程是独立调度和分配的基本单位。2并发性:线程具有更高的并发性。3拥有资源:线程仅有少量运行必须的资源,进程是拥有资源的单位。4系统开销:线程的系统开销更小
(以前学操作系统时的笔记,希望对你有用
1)程序只是一组指令的有序集合,它本身没有任何运行的含义,它只是一个静态的实体。而进程则不同,它是程序在某个数据集上的执行。进程是一个动态的实体,它有自己的生命周期。它因创建而产生,因调度而运行,因等待资源或事件而被处于等待状态,因完成任务而被撤消。反映了一个程序在一定的数据集上运行的全部动态过程。
2)进程和程序并不是一一对应的,一个程序执行在不同的数据集上就成为不同的进程,可以用进程控制块来唯一地标识每个进程。而这一点正是程序无法做到的,由于程序没有和数据产生直接的联系,既使是 执行不同的数据的程序,他们的指令的集合依然是一样的,所以无法唯一地标识出这些运行于不同数据集上的程序。一般来说,一个进程 肯定有一个与之对应的程序,而且只有一个。而一个程序有可能没有与之对应的进程(因为它没有执行),也有可能有多个进程与之对应(运行在几个不同的数据集上)。
3)进程还具有并发性和交往性,这也与程序的封闭性不同。