进程控制块的作用及定义
- 格式:pdf
- 大小:241.33 KB
- 文档页数:2
操作系统创建进程的流程一、引言在计算机科学中,进程是指计算机中正在运行的一个程序实例。
操作系统负责管理和控制进程的创建、执行和终止。
进程的创建是操作系统的重要功能之一,本文将详细介绍操作系统创建进程的流程。
二、进程的定义进程是指在计算机系统中正在运行的一个程序实例,它具有独立的内存空间和执行环境。
每个进程都有自己的标识符(PID)和状态,可以并发地执行不同的任务。
三、进程的创建流程操作系统创建进程的流程大致可以分为以下几个步骤:1. 程序加载:首先,操作系统需要将要执行的程序从存储介质(如硬盘)加载到内存中。
这涉及到磁盘读取和内存分配等操作。
2. 内存分配:在将程序加载到内存中后,操作系统需要为新进程分配一块独立的内存空间。
这样,进程就可以在自己的地址空间中执行,而不会与其他进程相互干扰。
3. 上下文切换:在为新进程分配内存空间后,操作系统需要保存当前进程的上下文信息,包括程序计数器、寄存器等。
然后,操作系统将控制权转移到新进程,开始执行它的代码。
4. 初始化:新进程开始执行后,操作系统需要对其进行初始化。
这包括设置进程的状态、打开文件描述符、建立与其他进程的通信等。
5. 执行程序:一旦新进程被初始化,操作系统就会开始执行该进程的代码。
进程可以执行一系列指令,访问内存和设备资源,并进行各种计算和操作。
6. 进程调度:在多任务环境下,操作系统需要合理地调度进程的执行顺序。
进程调度算法可以根据不同的策略来选择下一个要执行的进程,如时间片轮转、优先级调度等。
7. 进程终止:当进程完成其任务或发生错误时,操作系统会终止该进程的执行。
在终止进程之前,操作系统会释放进程占用的内存和资源,并通知其他相关进程。
四、进程控制块(PCB)操作系统创建进程时,会为每个进程分配一个进程控制块(PCB),用于保存进程的相关信息。
PCB包括进程的标识符、状态、优先级、程序计数器、寄存器、内存分配信息等。
PCB的存在使得操作系统能够有效地管理和控制进程的创建、执行和终止。
第2章操作系统的运行环境2.2 现代计算机为什么设置目态/管态这两种不同的机器状态?现在的lntel80386设置了四级不同的机器状态(把管态又分为三个特权级),你能说出自己的理解吗?答:现在的Intel 80386把执行全部指令的管态分为三个特权级,再加之只能执行非特权指令的目态,这四级不同的机器状态,按照系统处理器工作状态这四级不同的机器状态也被划分管态和目态,这也完全符合处理器的工作状态。
2.6 什么是程序状态字?主要包括什么内容?答:如何知道处理器当前处于什么工作状态,它能否执行特权指令,以及处理器何以知道它下次要执行哪条指令呢?为了解决这些问题,所有的计算机都有若干的特殊寄存器,如用一个专门的寄存器来指示一条要执行的指令称程序计数器PC,同时还有一个专门的寄存器用来指示处理器状态的,称为程序状态字PSW。
主要内容包括所谓处理器的状态通常包括条件码--反映指令执行后的结果特征;中断屏蔽码--指出是否允许中断,有些机器如PDP-11使用中断优先级;CPU的工作状态--管态还是目态,用来说明当前在CPU上执行的是操作系统还是一般用户,从而决定其是否可以使用特权指令或拥有其它的特殊权力。
2.11 CPU如何发现中断事件?发现中断事件后应做什么工作?答:处理器的控制部件中增设一个能检测中断的机构,称为中断扫描机构。
通常在每条指令执行周期内的最后时刻中扫描中断寄存器,询为是否有中断信号到来。
若无中断信号,就继续执行下一条指令。
若有中断到来,则中断硬件将该中断触发器内容按规定的编码送入程序状态字PSW的相应位(IBM-PC中是第16~31位),称为中断码。
发现中断事件后应执行相中断处理程序,先由硬件进行如下操作:1、将处理器的程序状态字PSW压入堆栈2、将指令指针IP(相当于程序代码段落的段内相对地址)和程序代码段基地址寄存器CS的内容压入堆栈,以保存被子中断程序的返回地址。
3、取来被接受的中断请求的中断向量地址(其中包含有中断处理程序的IP,CS的内容),以便转入中断处理程序。
第⼆章、进程的描述与控制第⼆章、进程的描述与控制2.1 前趋图和程序执⾏2.1.1 前趋图概念:所谓前趋图:指⼀个有向⽆循环图(DAG),它⽤于描述进程之间执⾏的先后顺序。
2.1.2 程序顺序执⾏特征:顺序性封闭性:指程序在封闭的环境中运⾏,程序运⾏时独占全机资源,资源的状态只有本程序才能改变,程序⼀旦开始执⾏,其执⾏结果不受外界因素影响可再现性:只要条件相同还会得到相同的执⾏结果。
2.1.3 程序并发执⾏特征:间断性失去封闭性不可在现性2.2进程的描述2.2.1 进程的定义和特征定义为了使程序并发执⾏,并且可以对并发执⾏的程序加以描述和控制,⼈们引⼊了进程的概念。
为了使参与并发执⾏的每个程序都能独⽴运⾏,在操作系统中必须为之分配⼀个专门的数据结构,称为进程控制块(PCB)。
系统利⽤PCB 来描述进程的基本情况和活动过程,进⽽控制和管理进程。
因此进程的定义为:由程序段、相关的数据段和由程序段、相关的数据段和PCB三部分构成的进程实体。
⽐较典型的定义有:进程是程序的⼀次执⾏进程是⼀个程序及其数据在处理机上顺序执⾏时所发⽣的活动进程是具有独⽴功能的程序在⼀个数据结合上运⾏的过程,它是系统进⾏资源分配和调度的⼀个独⽴单位。
进程的特征动态性并发性独⽴性异步性2.2.2 进程的基本状态以及转换进程三种基本状态由于多个进程在并发执⾏时共享系统资源,致使他们在运⾏过程中呈现间断性的运⾏规律,所以进程在⽣命周期内可能具有不同状态。
⼀般⽽⾔,每个进程⾄少应处于以下三种基本状态:就绪(Ready)状态指进程已处于准备好运⾏的状态,即进程已分配到除CPU以外的所有必要资源后,只要再获得CPU就可以⽴即执⾏。
如果有多个就绪状态的进程。
就绪队列通常按照⼀定的策略排成⼀个队列,称该队列为就绪队列执⾏(Running)状态指进程已经获得CPU,其程序正在执⾏的状态。
在单处理机系统中,只有⼀个进程处于执⾏状态,⽽多处理机系统则有多个进程处于阻塞(Block)状态指正在执⾏的进程由于发⽣某事件(如I/O请求、申请缓冲区失败等)暂时⽆法继续执⾏时的状态,即进程的执⾏受到了阻塞。
1.CPU的两种运行模式:内核态(又称核心态、系统态、管态)与用户态(又称目态)。
2.指令是控制计算机执行某种操作的命令。
3.特权指令:是一类具有特殊权限的指令,只用于操作系统或其他系统软件,普通用户不能直接使用4.非特权指令:也称为用户指令或普通指令,是普通用户能够直接使用的指令。
这是指令集中除特权指令外的所有指令。
5.操作系统的用户观点与系统观点:用户观点:为用户提供使用计算机系统的接口与各种资源管理服务(从系统外部看)系统观点:管理与分配计算机系统硬件及软件资源。
因此,操作系统是计算机资源的管理者(从系统内部看6.操作系统:是控制与管理计算机系统内各种硬件与软件资源、有效地组织多道程序运行的系统软件(或程序集合),是用户与计算机之间的接口。
功能:处理机管理、存储器管理、设备管理、文件管理、用户接口7.多道程序设计的基本思想:在内存中同时存放多道程序,在管理程序的控制下交替地执行。
这些作业共享CPU与系统中的其他资源。
8.多道批处理系统优缺点:优点:系统资源利用率高;系统吞吐量大。
缺点:用户作业等待时间长;无交互性,用户一旦提交作业就失去了对其运行的控制能力9.多道:系统在内存中存放多个作业,并且在外存上还保存大量的后备作业。
10.成批:系统按批次调度作业,而在系统运行过程中不允许用户与机器之间发生交互作用。
11.分时:对时间的共享。
在分时系统中,分时主要是指若干并发程序对CPU时间的共享12.Linux系统特点:与UNIX兼容;自由软件,源码公开;性能高,安全性强;便于定制与再开发;互操作性高;全面的多任务与真正的32位操作系统13.进程概念:程序在并发环境中的执行过程进程最根本的属性:是动态性与并发性进程的特征:动态性并发性独立性异步性批处理系统的特征:脱机多道成批处理分时系统的特征:多路性独立性及时性交互性14.进程间的相互关系主要分为如下三种形式:1.互斥——竞争同一资源而发生相互制约2. 同步——协同完成一项任务3. 通信——交换信息,合作完成一项工作15.进程与程序的区别与联系:(1)进程是动态概念,程序是静态概念(2)进程有并发性,程序没有(3)一个程序对应多个进程(4)进程有三个基本状态进程的三种状态及其转换16.进程控制块的作用:每个进程有唯一的进程控制块;操作系统根据PCB对进程实施控制与管理;进程的动态、并发等特征是利用PCB表现出来的;PCB是进程存在的唯一标识17.临界资源:一次仅允许一个进程访问的资源18.临界区:简称CS区进程中访问临界资源的那段程序代码19.原语是为完成某些特定的功能而编制的一段系统程序。
《计算机操作系统》复习大纲第一章绪论1.掌握操作系统的基本概念、主要功能、基本特征、主要类型;2.理解分时、实时系统的原理;第二章进程管理1.掌握进程与程序的区别和关系;2.掌握进程的基本状态及其变化;3.掌握进程控制块的作用;4.掌握进程的同步与互斥;5.掌握多道程序设计概念;6.掌握临界资源、临界区;7.掌握信号量,PV操作的动作,8.掌握进程间简单同步与互斥的实现。
第三章处理机调度1.掌握作业调度和进程调度的功能;2.掌握简单的调度算法:先来先服务法、时间片轮转法、优先级法;3.掌握评价调度算法的指标:吞吐量、周转时间、平均周转时间、带权周转时间和平均带权周转时间;4.掌握死锁;产生死锁的必要条件;死锁预防的基本思想和可行的解决办法;5.掌握进程的安全序列,死锁与安全序列的关系;第四章存储器管理1.掌握用户程序的主要处理阶段;2.掌握存储器管理的功能;有关地址、重定位、虚拟存储器、分页、分段等概念;3.掌握分页存储管理技术的实现思想;4.掌握分段存储管理技术的实现思想;5.掌握页面置换算法。
第五章设备管理1.掌握设备管理功能;2.掌握常用设备分配技术;3.掌握使用缓冲技术的目的;第六章文件管理1.掌握文件、文件系统的概念、文件的逻辑组织和物理组织的概念;2.掌握目录和目录结构;路径名和文件链接;3.掌握文件的存取控制;对文件和目录的主要操作第七章操作系统接口1.掌握操作系统接口的种类;2.掌握系统调用的概念、类型和实施过程。
计算机操作系统复习知识点汇总第一章1、操作系统的定义、目标、作用操作系统是配置在计算机硬件上的第一层软件,是对硬件系统的首次扩充。
设计现代OS的主要目标是:方便性,有效性,可扩充性和开放性.OS的作用可表现为:a. OS作为用户与计算机硬件系统之间的接口;(一般用户的观点)b. OS作为计算机系统资源的管理者;(资源管理的观点)c. OS实现了对计算机资源的抽象.2、脱机输入输出方式和SPOOLing系统(假脱机或联机输入输出方式)的联系和区别脱机输入输出技术(Off-Line I/O)是为了解决人机矛盾及CPU的高速性和I/O 设备低速性间的矛盾而提出的.它减少了CPU的空闲等待时间,提高了I/O速度.由于程序和数据的输入和输出都是在外围机的控制下完成的,或者说,它们是在脱离主机的情况下进行的,故称为脱机输入输出方式;反之,在主机的直接控制下进行输入输出的方式称为联机(SPOOLing)输入输出方式假脱机输入输出技术也提高了I/O的速度,同时还将独占设备改造为共享设备,实现了虚拟设备功能。
第一章绪论1、操作系统是一组控制和管理计算机硬件和软件资源、合理的对各类作业进行调度以方便用户的程序集合※2、操作系统的目标:方便性、有效性、可扩展性、开发性※3、操作系统的作用:作为计算机硬件和用户间的接口、作为计算机系统资源的管理者、作为扩充机器4、单批道处理系统:作业处理成批进行,内存中始终保持一道作业(自动性、顺序性、单道性)5、多批道处理系统:系统中同时驻留多个作业,优点:提高CPU利用率、提高I/O设备和内存利用率、提高系统吞吐量(多道性、无序性、调度性)6、分时技术特性:多路性、交互性、独立性、及时性,目标:对用户响应的及时性7、实时系统:及时响应外部请求,在规定时间内完成事件处理,任务类型:周期性、非周期性或硬实时任务、软实时任务※8、操作系统基本特性:并发、共享、虚拟、异步性并行是指两或多个事件在同一时刻发生。
并发是两或多个事件在同一时间间隔内发生。
互斥共享:一段时间只允许一个进程访问该资源同时访问:微观上仍是互斥的虚拟是指通过某种技术把一个物理实体变为若干个逻辑上的对应物。
异步是指运行进度不可预知。
共享性和并发性是操作系统两个最基本的特征※9、操作系统主要功能:处理机管理、存储器管理、设备管理、文件管理、用户管理第二章进程的描述和控制※1、程序顺序执行特征:顺序性、封闭性、可再现性※2、程序并发执行特征:间断性、失去封闭性、不可再现性3、前趋图:有向无循环图,用于描述进程之间执行的前后关系表示方式:(1)p1--->p2(2)--->={(p1,p2)| p1 必须在p2开始前完成}节点表示:一条语句,一个程序段,一进程。
(详见书P32)※4、进程的定义:(1)是程序的一次执行过程,由程序段、数据段、程序控制块(PBC)三部分构成,总称“进程映像”(2)是一个程序及其数据在处理机上顺序执行时所发生的活动(3)是程序在一个数据集合上的运行过程(4)进程是进程实体的运行过程,是系统进行资源分配和调度的一个独立单位进程特征:动态性、并发性、独立性、异步性由“创建”而产生,由“调度”而执行;由得不到资源而“阻塞”,由“撤消”而消亡※5、进程与程序关系※6、进程的三种状态:就绪、阻塞、执行转换:增加挂起:7、进程控制块(PCB)的作用:进程存在的唯一标志。
task_struct结构的定义在Linux操作系统中,每个进程都有一个唯一的进程控制块(Process Control Block, PCB),它包含了所有该进程的运行状态信息以及所需的所有资源。
而在PCB中最重要的结构之一便是task_struct结构,它包含了该进程的所有信息,从进程ID到进程文件描述符等。
下面,我们将逐步阐述task_struct结构的定义:1. 首先,task_struct结构是在进程创建时动态分配的一个内存块,它的定义以及各字段的含义在Linux内核头文件<linux/sched.h>中。
该结构体定义如下:struct task_struct {/* 进程状态 */volatile long state;/* 进程调度信息 */int priority;int static_prio;int normal_prio;unsigned int rt_priority;+++++++++其中,state字段用于表示该进程当前状态,如就绪、运行或睡眠;priority、static_prio、normal_prio和rt_priority字段用于表示该进程的调度优先级,其中rt_priority仅在实时进程中使用。
2. 接下来是一些与进程调度有关的字段,如下所示:/* 进程调度信息 */int prio, static_prio;struct list_head run_list;/* 进程计时 */unsigned long long start_time;unsigned long long real_start_time;cputime_t utime, stime, utimescaled, stimescaled;+++++++++其中,run_list字段用于将就绪进程链接为一个双向链表,start_time和real_start_time字段用于统计进程的运行时间,utime 和stime字段记录进程在用户态和内核态的CPU时间,utimescaled和stimescaled则对这些值进行缩放。
操作系统的学习总结操作系统的学习总结操作系统的学习总结一经过一天半的战斗,终于把操作系统概论这本书给拿下了。
对于曾经专业课学过一些电脑硬件知识的我来说,这本书更加吸引我,以前一些听过的名词或高大上的词语在这本书上被详细介绍了,看的非常有收获。
下面来总结下自己的收获:首先第一章引论,在这里首先介绍了计算机系统,包括了软件和硬件两部分。
接下来就是第一章的重点:操作系统。
如下图:当前流行的操作系统有windows、unix、linux等。
微软的windows系统经历了一个从简单到复杂,从低级到高级的过程;从ms-dos---windows3---windows95---windows98---windowsnt---windows2000,再到现在win7、8甚至win10,微软始终在进步。
unix是一个通用的交互式分时操作系统,有at&t公司下属的bell实验室开发,在诞生后,源代码就一直公开,用户可以参与到unix的升级中。
unix的特点:1.短小精悍;2.可装卸的多层次文件系统;3.可移植性好;4.网络通信功能强。
linux是网络时代的产品,继承于unix,并做了很多改进。
第一章总领了全书,后面的二三四五六章都是讲的计算机的各种管理,总结如下图:在这里我把每章中的重点用红色的颜色标记出来了,这样在精读的时候就可以有重点的向外扩散,抓住考点,征服考试。
第一遍阅读画的有点粗糙,在精读的时候再大大的丰富下。
操作系统学习总结2这里的设备指的是i/o设备,即冯若依曼所提出的计算机五大部件的输入/输出部件,在五大部件中占其二,可想其重要行了,现在,开始我的总结之旅了i/o系统可以分为:微机i/o设备和主机i/o设备。
这两个之间的区别和联系,我还是不太清楚。
感觉微机i/o比主机i/o要简单。
对i/o系统的管理有以下几种管理方式:程序控制方式:这种方式好比学51单片机编汇时反复去检测一个端口是否有要求的信号来一样,简单,但对cpu利用率太太太太太低了。
1.OS的主要功能操作系统的基本功能:处理机管理、存储管理、设备管理、信息管理(文件系统管理)、用户接口。
2.OS有哪三种类型?各有什么特点?操作系统一般可分为三种基本类型,即批处理系统、分时系统和实时系统。
批处理操作系统的特点是:多道和成批处理。
分时系统具有多路性、交互性、“独占”性和及时性的特征。
实时系统特点:及时响应和高可靠性3.OS的基本特征是什么?并发性、共享性、虚拟技术、异步性4.OS一般为用户提供了哪三种接口?各有什么特点?1.联机命令接口提供一组命令供用户直接或间接操作。
根据作业的方式不同,命令接口又分为联机命令接口和脱机命令接口。
2.程序接口程序接口由一组系统调用命令组成,提供一组系统调用命令供用户程序使用。
3.图形界面接口通过图标窗口菜单对话框及其他元素,和文字组合,在桌面上形成一个直观易懂使用方便的计算机操作环境.5.OS主要有那些类型的体系结构?单体结构、层次结构、微内核结构与客户机-服务器模型、虚拟机结构6.多道程序设计的主要特点是什么?多道程序设计技术是指在内存同时放若干道程序,使它们在系统中并发执行,共享系统中的各种资源。
当一道程序暂停执行时,CPU立即转去执行另一道程序。
[特点]:多道、宏观上并行(不同的作业分别在CPU和外设上执行)、微观上串行(在单CPU上交叉运行)。
7.OS在计算机系统中处于什么地位?操作系统在计算机系统中占有特殊重要的位置,所有其他软件都建立在操作系统基础上,并得到其支持和服务;操作系统是支撑各种应用软件的平添。
用户利用操作系统提供的命令和服务操纵和使用计算机。
可见,操作系统实际上是一个计算机系统硬件、软件资源的总指挥部。
操作系统的性能决定了计算机系统的安全性和可靠性。
8.解释一下术语:进程、进程控制块、进程映像、线程、进程的互斥和同步、临界区和临界资源、竞争条件、原语、信号量、管程、死锁、饥饿进程:进程是程序在一个数据集合上的运行过程,是系统进行资源分配和调度的一个独立的基本单位。
操作系统五大功能模块有哪些操作系统是计算机系统中非常重要的一部分,为计算机硬件和软件提供各种管理和支持功能。
它是协调和控制计算机资源,提供给用户和应用程序使用的软件集合。
操作系统具备五大功能模块,它们分别是:1. 进程管理模块进程管理模块是操作系统的核心功能之一。
它负责控制和管理计算机系统中的进程。
进程是指正在运行的程序,是计算机执行任务的基本单位。
进程管理模块的主要任务包括:•进程创建和撤销:操作系统能够创建、启动和撤销进程,根据用户或程序的要求,动态地分配和回收系统资源,提供必要的运行环境。
•进程调度:根据一定的调度算法,决定正在运行的进程和即将运行的进程,合理利用计算机资源,提高系统的吞吐量和响应速度。
•进程间通信:操作系统提供各种通信机制,使进程能够方便地进行信息交换和共享。
2. 内存管理模块内存管理模块负责管理计算机系统中的内存资源。
内存是计算机用于存储程序和数据的地方,对于一个操作系统来说,合理地管理内存非常重要。
内存管理模块的主要任务包括:•内存分配:操作系统负责将内存分配给进程,并跟踪每个进程的内存使用情况,确保进程之间不会相互干扰。
•内存回收:当进程终止或释放内存时,内存管理模块需要回收这些内存资源,以便供其他进程使用。
•内存保护:操作系统通过地址映射和访问权限控制等机制,保护不同进程之间的内存空间,防止恶意访问和越界访问。
3. 文件系统模块文件系统模块是操作系统中负责管理文件和目录的功能模块。
文件系统是计算机中用于组织和存储数据的记录式存储系统。
文件系统模块的主要任务包括:•文件的创建、打开和关闭:操作系统提供接口和机制,使用户能够方便地创建和访问文件,对文件进行打开和关闭操作。
•文件的读取和写入:操作系统提供读写接口,使用户能够读取和写入文件中的数据。
•文件的管理和保护:操作系统负责为文件分配磁盘空间,管理文件的属性和权限,保护文件免受恶意访问和损坏。
4. 设备管理模块设备管理模块负责操作计算机系统中的各种硬件设备,使之能够与操作系统和应用程序进行有效的通信和交互。
操作系统各模块之间的联系-回复操作系统是计算机系统中最基本且最核心的软件之一,它负责管理和控制计算机系统中的硬件和软件资源。
操作系统的模块之间存在紧密的联系和相互作用,以实现计算机系统的高效运行和用户的需求。
首先,我们来了解一下操作系统的各个模块。
通常,一个完整的操作系统由以下几个主要模块组成:1. 进程管理模块:负责管理和控制系统中的进程。
进程是指正在运行的程序的实例,操作系统通过进程管理模块来为每个进程分配合适的资源并进行调度,以实现进程的创建、执行、切换和终止等操作。
2. 存储管理模块:负责管理和分配系统中的内存资源。
操作系统通过存储管理模块来为程序分配内存空间,并根据程序的需求进行内存的分配和回收。
存储管理模块还负责处理内存碎片问题,以保证内存资源的高效利用。
3. 文件系统模块:负责管理计算机系统中的文件和目录。
操作系统通过文件系统模块来对文件进行组织、存储和管理,包括文件的创建、读取、写入和删除等操作。
文件系统模块还负责处理文件的权限和保护机制,以保护用户数据的安全性。
4. 输入/输出模块:负责处理计算机系统与外部设备的输入和输出操作。
操作系统通过输入/输出模块来管理和控制各种设备,包括键盘、鼠标、显示器、打印机等,以实现用户与计算机系统的交互和数据的传输。
以上是操作系统的主要模块,它们之间存在密切的联系和相互作用。
下面,我们将逐一介绍这些模块之间的联系和作用。
首先是进程管理模块和存储管理模块之间的联系。
进程管理模块负责管理系统中的进程,而存储管理模块负责管理和分配系统的内存资源。
当一个进程被创建时,进程管理模块会向存储管理模块请求分配一块适当大小的内存空间,并将进程的代码和数据加载到该内存空间中。
当进程执行完毕或被终止时,进程管理模块会通知存储管理模块回收该进程所占用的内存空间。
其次是进程管理模块和文件系统模块之间的联系。
进程管理模块负责管理系统中的进程,而文件系统模块负责管理和操作系统中的文件。