精华内容
下载资源
问答
  • 操作系统-第二章自测题
    千次阅读
    2021-06-28 13:28:41

    自 测 题
    一、选择题
    1.并发执行的程序具有(D)特征。
    A.顺序性 B. 封闭性 C.可再现性 D.间断性
    2.在操作系统中,要想读取文件中的数据,通过(A)来实现?
    A.系统调用 B.原语 C.文件共享 D.中断
    3.在进程状态转换图中,(B)是不可能的。
    A.运行态→就绪态 B.运行态→等待态 C.等待态→运行态 D. 等待态→就绪态
    4.操作系统对进程进行管理与控制的基本数据结构是(B)。
    D. DCT A. JCB B. PCB C.PMT D. DCT
    5.一个进程当前处于等待状态,则(B)。
    A.它可以被调度而获得处理机
    B.当I/O完成后,它将变成就绪状态
    C.它永远不会被执行
    D.它可能变成就绪状态,也可能直接获得处理机
    6.进程和程序的本质区别是( A) 。
    A.动态或静态 B.分时使用或独占计算机资源
    C.顺序或非顺序地执行其指令 D.存储在内存和外存
    7.进程和线程的区别是( C)。
    A.大小不同 B.独立调度的单位.
    C.是否拥有资源 D.对应的分别是程序和过程
    8.建立进程就是( B)。
    A.建立进程的目标程序 B.为其建立进程控制块
    C.将进程挂起 D.建立进程及其子孙的进程控制块
    9.对进程的管理和控制使用( B)。
    A.指令 B.原语 C.信号量 D.信箱通信
    10.下面对进程的描述,错误的是( D )。
    A.进程是一个动态的概念
    B.进程的执行需要处理机
    C.进程是有生命期的
    D.进程是指令的集合
    11.多道程序环境中,操作系统分配资源是以( C )为单位。
    A.程序 B.指令 C.进程 D.作业
    12. 并发程序失去了封闭性是指( D )。
    A.多个相对独立的进程以各自的速度向前推进
    B.并发进程执行时,在不同时刻发生的错误
    C.并发进程执行结果与速度无关
    D.并发进程共享变量,变量的值与并发执行的进程先后顺序有关.
    13.下面关于进程的描述,不正确的是( A )。
    A.进程是多道程序环境中的一-个程序
    B.进程由程序数据、栈和PCB组成
    C.线程是一种特殊的进程
    D.进程是程序在一-个数据集合上的执行过程,它是系统进行资源分配的单位
    14.当一个进程处于( D )状态时,不属于等待状态。
    A.进程正等待着输入一批数据
    B.进程正等待着打印输出
    C.进程正等待着另一个进程发来的消息
    D.进程正等待着给它一个时间片
    15.以下关于进程的说法,正确的是( C )。
    A.进程就是程序,它是程序的另一种叫法
    B.进程被创建后,在它消亡之前,任何时刻总是处于运行、就绪或阻塞3种状态之一
    C.多个不同的进程可以包含相同的程序
    D.两个进程可以同时处于运行状态
    16.进程的并发执行是指( B )。
    A.同时执行 B.在执行时间上是重叠的
    C.在执行时间上是不重叠的 D.共享系统资源
    17. 进程是一个具有一定独立功能的程序在其数据集合上的一次( B )。
    A.等待活动 B.运行活动 C.单独活动 D.关联操作
    18.以下进程控制块中的四项内容,( D )主要是由处理机各种寄存器中的内容组成的。
    A.进程标识信息 B.进程调度信息. C.进程控制信息 D.处理机状态信息
    19.以下四项内容中,( A )不是进程创建过程所必需的。
    A.为进程分配CPU B.建立进程控制块
    C.为进程分配内存 D.将进程链入就绪队列
    20.一个进程被唤醒意味着(B )。
    A.进程重新得到CPU B.进程变为就绪状态
    C.进程的优先级变为最大 D.一个进程被挂起
    21.在单处理机系统中有n(n>2)个进程,不可能发生的情况是( C )。
    A.没有进程运行,没有就绪进程,n个等待进程
    B.有1个进程运行,没有就绪进程,n-1个等待进程
    C.有2个进程运行,有1个就绪进程,n-3个等待进程
    D.有1个进程运行,有n-1个就绪进程,没有等待进程
    22.在单处理机系统实现并发后,以下说法正确的是( C )。
    A.各进程在某一时刻并行运行,CPU与外设之间并行工作
    B.各进程在某一时间段并行运行,CPU与外设之间串行工作
    C.各进程在某一时间段并行运行,CPU与外设之间并行工作
    D.各进程在某一时刻并行运行,CPU与外设之间串行工作
    23.进程的数目主要受( A )的限制。
    A. CPU速度 B.用户数目 C.终端数目 D.打开文件数目
    24.( B )必定引起进程切换。
    A.一个进程被创建 B.一个进程变为等待状态
    C.一个进程变为就绪状态 D.一个进程的PCB内容改变
    25. ( D )不是线程的实现方式。
    A.用户级线程 B.内核级线程
    C.用户级线程与内核级线程组合的方式 D.轻量级线程
    26.下列选项中,在用户态执行的是( A )。
    A.命令解释程序 B.缺页处理程序
    C.进程调度程序 D.时钟中断处理程序
    27.下列选项中,导致创建新进程的操作是( D )。
    I.用户登录成功 I.设备分配II.启动程序执行
    A.仅I和II
    B.仅I和川I
    C.仅1和川
    D. I、I、Il
    28.在用户级线程模型中,若一个进程中有多个线程,当进程中的某个线程被阻塞后( B)
    A.该进程的其他线程仍可继续运行
    B. 整个进程都将阻塞
    C.该阻塞线程将被撤销
    D.该阻塞线程将永远不可能在执行
    29.在内核级线程模型中,若一个进程中有多个线程,当进程中的某个线程被阻塞后
    ( A )。
    A.该进程的其他线程仍可继续运行
    B. 整个进程都将阻塞
    C.该阻塞线程将被撤销
    D.该阻塞线程将永远不可能在执行
    二、判断题
    1.用户态和核心态是由操作系统设定的。( F )(用户自定义设定)
    2.Bernstein提出了控制进程并发执行的条件。( T )
    3.只有处在阻塞状态的进程才可能被挂起。( F )
    4.进程控制块是进程存在的唯一标志。( T )
    5.线程所占有的存储空间一定比进程小。( F )
    6.不同进程所执行的程序必定不同。( F )
    7.并发执行的程序具有可再现性。( F )
    8.原语在执行时不能被中断。( T )
    9.任一时刻,若有执行状态的进程,就–定有就绪状态的进程。( F )
    10.线程既是拥有资源的单位,又是独立调度和分派的单位。( F )
    11. 特权指令只能在核心态下运行,而不能在用户态下执行。( T )
    12. 创建原语用来创建-一个新进程,并将此新进程投人等待队列。( F )
    13. 进程可以并发执行的条件是Bernstein.( T )
    14.原语在执行时能被中断。( F )
    15. 进程是一段独立的程序。( F )
    16.操作系统对进程的管理和控制主要是通过PCB来实现的。( T )
    17.并发是指若干事件在不同时刻发生。( F )(在一段时间间隔内,两个或多个事件处于已经开始运行到运行结束之间)
    18. 一个程序在执行过程中可能产生多个进程。( T )
    19.进程获得处理机而运行是自已能决定的。( F )
    20.线程无论采用什么方式实现,同一进程内或不同进程的线程都可以并发执行。( F )
    三、填空题
    1.计算机处于 用户 态时,不能执行特权指令。
    2.单道程序执行时,具有 顺序性 封闭性 和可再现性的特点。
    3.多道程序执行时,具有间断性,将失去 顺序性 和 封闭性 的特点。
    4.进程具有___动态性___、并发性独立性异步性__特征。
    5.进程的3种基本状态是__就绪状态
    __、运行状态______和____等待状态__。
    6.判断一个进程是否处于挂起状态,要看该进程是否在___内存____, 挂起状态又分为___就绪挂起_____和___阻塞挂起_____。
    7.进程映像通常由__程序__、数据_、栈____和PCB四部分组成。
    8.通常将处理机的执行状态分成___系统状态_____和____用户状态
    _。
    9.根据线程的切换是否依赖于内核把线程分成__用户级线程__和 内核级线程
    10. 进程是一个___动态___ (动态/静态)的概念,而程序是一个___静态___(动态/静态)的概念。

    一、选择题
    1.以下( B )操作系统中的技术是用来解决进程同步的。
    A.管道 B.管程 C.通道 D. DMA
    2.以下( B )不是操作系统的进程通信手段。
    A.管道 B.原语 C.套接字 D.文件映射
    3.如果有3个进程共享同一程序段,而且每次最多允许两个进程进人该程序段,则信
    号量的初值应设置为( B )。
    A.3 B. 2 C.1 D. 0
    4.设有4个进程共享一个资源,如果每次只允许-一个进程使用该资源,则用P.V操作
    管理时信号量S的可能取值是( C ) 。
    A.3,2,1,0,-1 B. 2,1,0,-1,-2 C. 1,0,-1,-2,-3 D. 4,3,2,1,0
    5.下面有关进程的描述,( A )是正确的。
    A.进程执行的相对速度不能由进程自己来控制
    B.进程利用信号量的P.V操作可以交换大量的信息
    C.并发进程在访问共享资源时,不可能出现与时间有关的错误
    D. P.V操作不是原语操作
    6.信号灯可以用来实现进程之间的( B )。
    A.调度 B.同步与互斥 C.同步 D.互斥
    7.对于两个并发进程都想进入临界区,设互斥信号量为S,若某时S=0,表示( B )。
    A.没有进程进人临界区
    B.有一个进程进入了临界区
    C.有两个进程进入了临界区
    D.有一个进程进入了临界区并且另一个进程正等待进人
    8.信箱通信是一种( B )方式。
    A.直接通信 B.间接通信 C.低级通信 D.信号量
    9.以下关于临界区的说法,( C )是正确的。
    A.对于临界区,最重要的是判断哪个进程先进人
    B.若进程A已进入临界区,而进程B的优先级高于进程A,则进程B可以打断进
    程A而自己进人临界区
    C.信号量的初值非负,在其上只能做P、V操作
    D.两个互斥进程在临界区内,对共享变量的操作是相同的
    10.并发是指( C )
    A.可平行执行的进程 B.可先后执行的进程
    C.宏观上可同时执行的进程 D.不可中断的进程
    11.临界区是( C ) 。
    A.一个缓冲区 B.-段数据区
    C.一段程序 D.栈
    12.进程在处理机上执行,它们的关系是( C )。
    A.进程之间无关,系统是封闭的
    B.进程之间相互依赖、相互制约
    C.进程之间可能有关,也可能无关
    D.以上都不对
    13. 在消息缓冲通信中,消息队列是一种( A )资源。
    A.临界 B.共享 C.永久 D.可剥夺
    14.以下关于P、V操作的描述( D )正确。
    A.机器指令 B.系统调用 C.高级通信原语 D.低级通信原语
    15. 在单处理机中系统处于用户态,如果系统中有n个进程,则就绪队列中的进程个数
    最多是( D )。
    A.1个 B. n+1个 C. n个 D. n-1个
    16.对临界区的正确论述是( D )。
    A.临界区是指进程中用于实现进程互斥的那段代码
    B.临界区是指进程中用于实现进程同步的那段代码
    C.临界区是指进程中用于实现进程通信的那段代码
    D.临界区是指进程中访问临界资源的那段代码
    17. ( A )不是进程之间的通信方式。
    A.过程调用 B.消息传递 C.共享存储器 D.信箱通信
    18. 同步是指进程之间逻辑上的( A )关系。
    A.制约 B.调用 C.连接 D.排斥
    19. 在单处理机中,如果系统中有n个进程,则等待队列中的进程个数最多是( C )。
    A.1个 B. n+1个 C. n个 D. n-1个
    20.在单处理机中,如果系统中有n个进程,则运行队列中的进程个数最多是( A )。
    A.1个 B. n+1个 C. n个 D. n-1个
    21. 进程PO和进程P1的共享变量定义及其初值为
    boolean flag[2];
    int turn= 0;
    flag[0]= false; flag[1] = false;
    若进行PO和P1访问临界资源的类C代码实现如下:
    void P0( )//进程P0 void P1( )//进程P1.
    while( true) while(true)
    {flag[0]= true; {flag[1]= true;
    turn= 1; turn= 0;
    while(flag[1]8&(turn== 1)) while(f1ag[0]晋&(turn==0))
    临界区; 临界区;
    flag[0]= false; flag[1]= false; .
    则下列选项表达正确的是( D )。
    A.不能保证进程互斥进人临界区,会出现“饥饿”现象
    B.不能保证进程互斥进人临界区,不会出现“饥饿”现象
    C.能保证进程互斥进人临界区,会出现“饥饿”现象
    D.能保证进程互斥进入临界区,不会出现“饥饿”现象
    二、判断题
    1.信号量是解决进程同步与互斥问题的唯一 手段。( F )
    2.进程A.B共享资源X,需要互斥执行,进程B.C共享资源Y,也需要互斥执行,因此,进程A.C必须互斥执行。( F )
    3.信号灯只能描述进程之间的同步关系。( F )
    4.P.V操作中信号量的值永远代表着某类可用资源的数量。( F )
    5.一个进程正在临界区中执行时不能被中断。( F )(可以被优先级别高的进程抢占)
    6.对临界区应采用互斥访问的方式来实现共享。( T )
    7. P.V操作既可以用来实现进程之间的同步,也可以实现互斥。( T )(PV操作中,由P操作原语和V操作原语组成,来实现进程之间的同步与互斥)
    8.进程的互斥是关于进程怎样使用共享资源的问题,因此只要系统中有空闲的共享资
    源,系统就不会有阻塞的进程。( F )
    9.一个临界资源可以对应多个临界区。( T )
    10.所有的共享资源都是临界资源。( T )
    11. P.V操作是用原语实现的。( T )
    15.信号量是–种高级进程通信方式,消息缓冲是一种低级进程通信方式。( F )
    三、填空题
    1.在利用信号量实现互斥时,应将___临界区___置于___wait___和__signal____.之间。
    2. 在实现了用户级线程的系统中,CPU调度的对象是__进程____; 在实现了内核级线程
    的系统中,CPU调度的对象是__线程____
    3.在一个单处理机系统中,若有6个用户进程,且假设当前时刻为用户态,则处于就绪
    队列的进程最多有___5___个 ,最少有___0___个。
    4.有n个进程共享某一临界资源,如用信号量机制实现对临界资源的互斥访问,则信
    号量值的变化范围是1~ -(n-1)
    5.对信号量的操作,只能是__wait____操作和__signal_____操作,wait___操作相当于进程
    申请资源,signal___操作相当于进程释放资源。 如果___wait____操作使用不当,可能导致系统
    死锁。
    6.在多道程序环境中,进程之间存在的相互制约关系可以分为两种,即___间接相互制约 和___直接相互制约。其中,间接相互制约___是指进程之间使用共享资源时的相互约束关系,而___直接相互制约___是指进程之间的相互协作.相互配合关系。
    7. 如果信号量的初始值为3,则表示系统有3个___可用的共享资源
    ; 如果信号量的当前值为一4, 则表示在该信号量上有____4___个进程等待。
    8.信号量的物理意义是:信号量的初始值大于0表示系统中___可用资源数目
    ;信号量的初始值等于0表示系统中____没有该类共享资源
    _ ; 信号量的初始值小于0,其绝对值表示系统中__等待该类共享资源____
    9.使用临界区的4个准则是:空闲让进、忙则等待有限等待___和__让权等待
    10. 并发进程中涉及相同变量的程序段称为___同类临界区____, 对这段程序要___互斥___执行。
    11. 为实现消息通信,应有__send____和__receive_____两条基本原语。
    12. 对信号量S的P操作定义中,使进程进入等待队列的条件是___S<0____ ; V操作定义中,唤醒进程的条件是__S<=0______
    13. AND信号量的基本思想是,将进程在整个运行期间所需要的所有临界资源__一次性__地全部分配给进程,待该进程使用完后再一起释放。
    14.高级通信机制可分为三大类:共享存储器系统_、__消息传递系统__和管道通信。

    更多相关内容
  • 进程状态及其转换

    2019-08-31 22:46:49
    ③就绪:当一个处于等待状态进程因等待事件发生唤醒后,又因不可能立即得到处理机而进入就绪状态。 ④初始:进程刚被创建时,由于其他进程正占有处理机而得不到执行,只能处于初始状态。 ...

    进程状态及其转换
    1、进程状态(5种):初始、就绪、执行、等待、终止
    ①执行:一个进程在并发执行中,由于资源共享与竞争,有时处于执行状态。

    ②等待:有时进程因等待某种事件发生放弃处理机进入而处于等待状态。

    ③就绪:当一个处于等待状态的进程因等待事件发生唤醒后,又因不可能立即得到处理机而进入就绪状态。

    ④初始:进程刚被创建时,由于其他进程正占有处理机而得不到执行,只能处于初始状态。
     

    展开全文
  • 选择题 1.引入多道程序的目的在于( A )。 A.充分利用CPU,减少CPU等待...2. 一个进程当前处于等待状态,则( D )。 A. 它可以被调度而获得处理机 B.它可能变成就绪状态,也可能直接获得处理机 C.它永...

     

    • 选择题

    1.引入多道程序的目的在于(  A )。  
    A.充分利用CPU,减少CPU等待时间               B.提高实时响应速度
    C.有利于代码共享,减少主、辅存信息交换量       D.充分利用存储器

    2. 一个进程当前处于等待状态,则( D  )。

        A. 它可以被调度而获得处理机   

    B.它可能变成就绪状态,也可能直接获得处理机

            C.它永远不会被执行             

    D.当I/O 完成后,它将变成就绪状态

    3.在消息缓冲队列通信机制中,临界资源为(B  )。                    

    A.发送进程                          B.消息队列        

    C.接收进程                          D.信箱

    4.在操作系统中采用多道程序设计方式能提高 CPU 和外部设备的(    A) 。

    A. 利用率       B. 可靠性       C. 稳定性       D. 兼容性

    5.在下面的叙述中,正确的是( D   )。

     A.引入线程后,处理机只在线程间切换

      B.引入线程后,处理机仍在进程间切换

    C.线程的切换,不会引起进程的切换

    D.线程的切换,可能引起进程的切换

    6.进程调度又称为低级调度,其主要功能是(    D  )。

    A.选择一个作业调入内存

    B.选择一个主存中的进程调出到外存

    C.选择一个外存中的进程调入到主存

    D.将一个就绪的进程投入运行

    7.若进程P一旦被唤醒就能够投入运行,系统可能为(  D   )。

    A.在分时系统中,进程P的优先级最高

    B.抢占调度方式,就绪队列上的所有进程的优先级皆比P的低

    C.就绪队列为空队列

    D.抢占调度方式,P的优先级高于当前运行的进程

    8.下列关于进程和线程的叙述中,正确的是(  A )。 

    A.不管系统是否支持线程,进程都是资源分配的基本单位 

    B.线程是资源分配的基本单位,进程是调度的基本单位 

    C.系统级线程和用户级线程的切换都需要内核的支持   //无线程时,进程调度需要内核支持

    D.同一进程中的各个线程拥有各自不同的地址空间

    9.单处理机系统中,可并行(指同一时刻)的是(     )

    I、进程与进程   II、处理机与设备   III、处理机与通道    IV、设备与设备

    A、I、II、III;    B、I、II和IV;    C、I、III和IV;    D、II、III和IV
    并行性:是指两个或两个以上的事件在同一时刻运行。
    并发性:是指两个或两个以上的事件在同一时间间隔运行。
    对于单处理机,2个进程之间只能并发,而不能并行。

    10.有两个并发执行的进程P1和P2,共享初值为1的变量x。P1对x加1,P2对x减1。加1和减1操作的指令序列分别如下所示。

    //加1操作                                 //减1操作

    load R1, x  //取x的值到寄存器R1中         load R2, x

    inc R1                                     dec R2

    store x,R1  //将R1的内容存入x             store x,R2

        两个操作完成后,x的值为( C )

    A.可能为-1或3               B.只能为1

    C.可能为0、1或2             D.可能为-1、0、1或2

     

    123456 ---x=1  456123----x=1

    124563 ---- x=2   x=1+1=2 存在R1中 然后 读取存于 R2中 再-1 1存于R2 最后读的是R1 所以 x =2

     451236---- x=0  x=1-1=0 存于R2中,然后读取存于R1 进行加一操作为2 存于R1,但最后读取R2 所以x=0

    11、若有4个进程共享同一程序段,而且每次最多允许3个进程进入该程序段,则信号量的变化范围是( B  )。 // 存在一个等待进程

    A. 3,2,1,0                             B. 3,2,1,0,-1              

    C. 4,3,2,1,0                          D. 2,1,0,-1,-2

    12.某时刻进程的资源使用情况如下表所示。

    进程

    已分配资源

    尚需资源

    可用资源

    R1

    R2

    R3

    R1

    R2

    R3

    R1

    R2

    R3

    P1

    2

    0

    0

    0

    0

    1

    0

    2

    1

    P2

    1

    2

    0

    1

    3

    2

    P3

    0

    1

    1

    1

    3

    1

    P4

    0

    0

    1

    2

    0

    0

    此时的安全序列是(  D ) D021+001+200=221->>>>p4    R2: 2<3 所有没有安全序列

    1. P1,P2,P3,P4             B. P1,P3,P2,P4

    C. P1,P4,P3,P2             D.不存在

     

    13.为了照顾紧迫型作业,应采用( D  )。

    A.先来服务调度算法          B.短作业优先调度算法 

    C.时间片轮转调度算法        D.优先权调度算法

    14.存储管理是对内存中(  B )区域进行管理。  

    A.整个内存                          B.供用户使用的

    C.供系统使用的                     D.供程序使用的

    15.在可变分区存储管理中的紧凑技术可以( A  )。

    A.集中空闲区           B.增加主存容量

    C.缩短访问时间         D.加速地址转换

    16.采用动态分区存储管理系统中,主存总容量为55MB,初始状态全空,采用最佳适应算法,内存的分配和回收顺序为:分配15MB,分配30MB,回收15MB,分配8MB,分配6MB,此时主存中最大的空闲分区大小是(  C  )。    

    A.7MB                              B.9MB          

    C.10MB                              D.15MB

    最佳适应算法是将所有的空闲区按其容量从小到大的顺序形成一空闲分区链

    17.下面最有可能使得高地址空间成为大的空闲区的分配算法是( A )。

    A.首次适应法          B.最佳适应法

    C.最坏适应法          D.循环首次适应法

    18.虚存管理和实存管理的主要区别是( C  )。

    A.虚存区分逻辑地址和物理地址,实存不分;

    B.实存要求一程序在内存必须连续,虚存不需要连续的内存;

    C.实存要求一程序必须全部装入内存才开始运行,虚存允许程序在执行的过程中逐步装入;

    D.虚存以逻辑地址执行程序,实存以物理地址执行程序;

    虚存管理是指添加了请求功能和置换功能的管理系统。而实存管理也包括基本分页和基本分段式

    实存要求一程序全部装入内存才开始运行,虚存允许程序在执行的过程中逐步装入

    19.在下列有关请求分页管理(虚拟)的叙述中,正确的是( D )。

    A.程序和数据是在开始执行前一次性装入的

    B.产生缺页中段一定要淘汰一个页面

    C.一个被淘汰的页面一定要写回外存

    D.在页表中要有“访问位”和“修改位”等信息

    虚拟内存技术的三种实现:请求分页管理方式、请求分段方式、请求段页管理方式。

    A. 程序、数据不是一次性装入,是装入了一部分,后续根据需要,进行换入换出的;

    B. 产生缺页中断时,若内存中有闲置的物理页面,就直接分配,不用淘汰了;

    C. 淘汰的页面若发生过写操作,即被修改过,则一定要写回内存;若没被修改过,就直接free掉,不用写回了;

     

    20.在请求分页管理中,已修改过的页面再次装入时应来自( B )。

    A.磁盘文件区              B.磁盘对换区

    C.后备作业区              D.I/O缓冲池
    请求分页系统,缺页时,如果页面未被修改是直接从磁盘文件区调入,对于那些可能修改的页面,在将它们换出时,便须调到对换区,以后需要时,再从对换区调入。(对换区采用连续分配方式,故磁盘I/O速度要较快一些。)

    21.在虚拟存储系统中,若进程在内存中占3块(开始时为空),采用先进先出页面淘汰算法,当执行访问页号序列为1,2,3,4,1,2,5,1,2,3,4,5,6时,将产生( D )次缺页中断?

    A.7     B.8     C.9      D.10

     

     

    22.在可变式分区分配方案中,某一作业完成后,系统收回其主存空间,并与相邻空闲区合并,为此需修改空闲区表,造成空闲区数减2的情况是( D )。

    A.无上邻空闲区,也无下邻空闲区

    B.有上邻空闲区,但无下邻空闲区

    C.有下邻空闲区,但无上邻空闲区

    D.有上邻空闲区,也有下邻空闲区

    系统为管理主存,将不相邻空闲区分别登记,要使空闲区个数减少,唯一的方法是合并,而只有地址相邻的空闲区才可合并。先看选项A,无上邻也无下邻,只好将回收区域单独登记,会导致空闲区数增1。再看选项B和选项C,如果只有一个相邻空闲区,则合并后空闲区数不改变。只有选项D,当与上邻空闲区和下邻空闲区合并,让原来的两个空闲区合并成一个,数量才会减1。

    23.某段表的内容如下图所示,现执行某条指令Load 1, 2/154,逻辑地址2/154(其中段号为2,段内地址为154),它对应的物理地址为( B )。

    A.120K+2        B.480K+154 (字节单位 B 20KB=20*1024B  段内偏移使以字节为单位)

    C.30K+154       D.2+480K

    段号

    段首址

    段长度

    0

    120K

    40K

    1

    760K

    30K

    2

    480K

    20K

    3

    370K

    20K

     

    24.在一页式存储管理系统中,页表内容如下图所示。若页的大小为4K,则地址转换机构将逻辑地址0转换成物理地址为(  )。

    A.8192   B.4096   C.2048   D.1024

    页号

    块号

    0

    2

    1

    1

    2

    6

    3

    3

    4

    7

    1024*4*2+0=8192

    逻辑地址= 页号*页大小+页内地址;

    物理地址= 块号*块大小+页内地址;

    物理地址 =  2 *(2^12) + 0 = 8192;

     

    25.当系统发生抖动(thrashing)时,可以采取的有效措施是(   A  )

      I、撤销部分进程

      II、增加磁盘交换区的容量

      III、提高用户进程的优先级

    A、仅I           B、仅II       C、仅III      D、仅I、II

     

    发生“抖动”的根本原因是:

          同时在系统中运行的进程太多 ,由此分配给每一个进程的物理块太少,不能满足进程正常运行的基本要求,致使每个进程在运行时,频繁地出现缺页,必须请求系统将所缺之页调入内 存。

    太多的话, 最直接有效的方法当然是撤销部分进程。

     

    26.下列关于虚拟存储的叙述中,正确的是(B)。 

    A. 虚拟存储只能基于连续分配技术   

    B. 虚拟存储只能基于非连续分配技术 

    C. 虚拟存储容量只受外存容量的限制  

    D. 虚拟存储量只受内存容量的限制

    虚拟存储器只能基于非连续分配技术。虚拟存储容量是虚拟的空间,与逻辑地址的位数相关,不会只受到内存或外存容量的限制

    27.在下面的I/O控制方式中,需要CPU干预最少的方式是( D )。

    A.程序I/O方式 

    B.中断驱动I/O控制方式 

    C.直接存储器访问DMA控制方式 

    D.I/O通道控制方式

    学生(I/O)有问题要问老师,如何对老师(CPU)造成尽量小的打扰。

    1.每隔5分钟问一次;                                程序I/O 方式(轮询)

    2.每一套试卷问一次;                           中断驱动I/O 控制方式(字节)

    3.每一天内一个科目攒的试卷问一次;                直接存储器访问DMA 控制方式(块)

    4.每天攒的所有科目试卷集中问一次;                     I/O 通道控制方式(几个块)


    I/O通道控制方式只有在开始和结束的时候CPU才会对其进行干预,在其处理I/O指令的过程中CPU不会对其进行干预,这样才能实现通道控制方式解放CPU的作用
    DMA控制方式需要CPU对DMA设备进行干预

     

    28.下列哪一条不是磁盘设备的特点( B )。

    A.传输速率较高,以数据块为传输单位 

    B.一段时间内只允许一个用户(进程)访问 

    C.I/O控制方式常采用DMA方式 

    D.可以寻址,随机地读/写任意数据块

    磁盘设备传输速率较高,以数据块为传输单位,I/O控制方式常采用DMA方式;可直接访问,即随机读/写任意数据块;允许多用户同时访问不同的数据块。因此本题选择B。

    29.利用通道实现了( C )之间数据的快速传输。

    A.CPU和外设                B.内存和CPU 

    C.内存和外设                D.外设和外设

    30.假脱机技术中,对打印机的操作实际上是用对磁盘存储实现的,用以替代打印机的部分是指( C )。

    A.共享设备                  B.独占设备 

    C.虚拟设备                  D.物理设备

    31.在调试程序时,可以先把所有输出送屏幕显示而不必正式输出到打印设备,其运用了(B  )。

    A.SPOOLing技术             B.I/O重定向 

    C.共享技术                  D.缓冲技术

    spooling技术是一种把独占设备改造成逻辑上共享的设备。
    I/O重定向,是指用于I/O操作的设备可以更换(重定向),而不必改变应用程序。比如调试程序,可将所有输出送屏幕显示,而程序调试完后,如需正式打印出来,需将I/O重定向中的数据结构---逻辑设备表中的显示终端改为打印机。

    32.设备驱动程序是系统提供的一种通道程序,它专门用于在请求I/O的进程与设备控制器间传输信息。下面的选项中不是设备驱动程序功能的是( C )。

    A.检查用户I/O请求的合法性 

    B.及时响应由控制器或通道发来的中断请求

    C.控制I/O设备的I/O操作

    D.了解I/O设备的状态,传送有关参数,设置设备的工作方式

    设备驱动程序的功能包括:
    将接收到的抽象要求转换为具体要求。检查用户I/O的合法性,了解设备的状态,传递有关参数,设置设备的工作方式。发出I/O操作命令,启动I/O设备,完成I/O操作。响应通道发来的中断请求,根据中断类型调用相应的中断处理程序。构造通道程序。

    33.下列关于通道、设备、设备控制器三者之间的关系叙述中正确的是(  )。

    A.设备控制器和通道可以分别控制设备

    B.设备控制器控制通道和设备一起工作 

    C.通道控制设备控制器,设备控制器控制设备 

    D.设备控制器控制通道,通道控制设备

    设备控制器是CPU与I/O设备之间的接口,它接收从CPU发来的命令,并去控制I/O设备工作。通道是增设在CPU和设备控制器之间的,通过执行通道程序,与设备控制器共同实现对I/O设备的控制的。可见,通道控制设备控制器(没有配置通道的系统没有这一层),设备控制器控制设备;通道不能直接控制I/O设备。

    34、可解决文件重名问题的最简单的目录结构是( c )

        A.单级目录   B.树型结构目录    C.两级目录     D.便于共享的目录

    35、假设磁头当前位于第105道,正在向磁道序号增加的方向移动。现有一个磁道访问请求序列为35,45,12,68,110,180,170,195,采用SCAN调度(电梯调度)算法得到的磁盘访问序列是(   A  )

    A. 110,170,180,195,68,45,35,12   B. 110,68,45,35,12,170,180,195

    C. 110,170,180,195,12,35,45,68   D. 12,35,45,68,110,170,180,195

    ----à110 170 180 195 68 45 35 12

    36.在系统内存中设置磁盘缓冲区的主要目的是(A) 

    A.减少磁盘I/O 次数                 B.减少平均寻道时间 

    C.提高磁盘数据可靠性                 D.实现设备无关性 

    缓解磁盘和内存的速度差异,可以将内存经常访问的文件调入磁盘缓冲区,从高速缓存中复制的访问比磁盘I/O的机械操作要快很多很多。

    37.下列选项中,操作系统提供的给应用程序的接口是(   A  )

    A.系统调用         B.中断          C.库函数       D.原语

    给终端用户的命令行接口(或图形界面接口),给程序员的系统调用接口

    操作系统提供的给应用程序的接口是系统调用。

    原语和中断都是操作系统本身的功能,不是提供给应用程序的接口。

    库函数是程序设计语言提供给程序员编程用的。

     

    38、解决 I/O 的“瓶颈”问题最有效的方法是(  D)。           

    A. 增加通道                           B. 增加控制器

    C. 减少 I/O 设备                      D. 启用多通路系统

    39、下列那项不是设备控制器的功能(   D)。           

    A. 接收和识别命令                    B. 设备状态的了解和报告  

    C. 数据交换,地址识别                  D. 实现设备独立性

    40、下列选项中不能提高对文件的访问速度的是( C)。       

    A. 改进文件目录结构以及检索方法       B. 提高磁盘 I/O 速度 

    C. 提高 CPU 的利用率                 D. 选择好的文件储存结构

    41、下列不属于同步机制应遵循的准则是(   D   )。            

    A.让权等待         B. 忙则等待         C. 空闲让进      D. 临界共享

    42、下列哪个不是产生死琐的必要条件( D  )。            

    A. 互斥条件        B. 不剥夺条件          C. 环路等待条件       D. 不保持条件

    43、磁盘高速缓冲区设置在(   C)内。                     

    A. CPU 内          B. 高速缓存        C. 内存              D. 硬盘

    磁盘缓冲区是操作系统为提高磁盘接口性能,会在主存中开辟一块缓冲区,显著减少磁盘I/O次数

    44、为了实行请求分页,计算机系统必须提供的硬件支持不包括( C )。    

    A. 页表机制                             B. 缺页中断机构    

    C. 请求调页机构                         D. 地址变换机构

    45、支持多道程序设计的操作系统在运行过程中,不断的选择新的程序运行来实现 CPU 共享,但其中(B )不是引起操作系统选择新进程的直接原因。

    A.运行进程的时间片用完                  B. 有新程序进入就绪状态

    C. 运行进程要等待某一事件发生           D. 运行进程出错

    46、操作系统向用户提供的接口有命令方式、程序方式及(    D)。

    A.系统功能调用          B.shell 命令               

    C.注册及口令            D.图形方式

    47、进程所请求的一次打印输出结束后,将使进程状态从(D)        

    A.运行态→就绪态                B.运行态→阻塞态       

    C.就绪态→运行态                D.阻塞态→就绪态

    48、如果允许不同用户的文件可以具有相同的文件名,通常采用(  D)来保证按名存取的安全。   A.重名翻译机构        B.建立索引表      C.建立指针       D.多级目录结构

    49、临界区是指并发进程中访问共享变量的(    D)段。            

    A.管理信息          B.信息存储         C.数据          D.程序

    50.产生系统死锁的原因可能是由于( C)。                

    A.进程释放资源                              B.一个进程进入死循环       

    C.多个进程竞争,资源出现了循环等待          D.多个进程竞争共享型设备

    51、在消息缓冲通信方式中,临界资源为(  B)。                       

    A. 发送进程         B. 消息队列         C. 接收进程         D. 信箱

    52、 下面哪种内存管理方法有利于程序的动态链接?( A )                 

    A. 分段存储管理                     B. 分页存储管理    

    C. 可变式分区管理                   D. 固定式分区管理

    动态链接也要以段为单位进行管理。程序的动态链接与程序的逻辑结构相关,分段存储管理将程序按照逻辑段进行划分,故有利于其动态链接

    53、文件系统用(B   )组织文件。                               

    A. 堆栈                 B. 目录             C. 指针             D. 路径

    54、下面说法正确的是(  D  )。

    A.文件系统要负责文件存储空间的管理,但不能完成文件名到物理地址的转换

    B.多级文件目录中,对文件的访问是通过路径名和用户目录名来进行的

    C.文件被划分为大小相等的若干个物理块,一般物理块的大小是不固定的

    D.逻辑记录是对文件进行存取的基本单位

    55、操作系统用来控制和管理一个文件的文件属性信息被称作该文件的(  D  )。

    A.PCB                             B.FAT  

    C.关键字                          D.FCB

    56、系统“抖动”现象的发生是由(    D   )引起的。  -à换入换出频繁,算法所致  

    A. 请求页式管理方案                     B. 交换的信息量过大

    C.内存容量不足                          D.置换算法选择不当

    57、通道又被称为I/O处理器,它用于实现下面(A   )之间的信息传输。

    A. 主存与外设       B. CPU与外设   

    C. 外设与外设                      D. CPU与辅存

    58、为了允许不同用户的文件使用相同的文件名,通常采用(  B)的方法。            

    A. 重名翻译                         B. 多级目录        

    C. 文件名到文件物理地址的映射       D. 索引表

    59、位示图方法可用于(  A  )。

    A.盘空间的管理                   B.盘的驱动调度  

    C.文件目录的查找                 D.页面置换

     

    • 填空题

    1、现代操作系统的两个最基本的特征是______程序的并发执行______和    资源共享  

    2、导弹飞行控制系统属于_________实时操作系统 ( ?)____________。

    3、操作系统向用户提供了两类接口,即        操作一级的接口               程序控制一级的接口         

    操作一级的接口包括操作控制命令、菜单命令等;程序控制一级的接口包括系统调用。

    4、从静态角度上看,进程是由       PCB     、程序段、      数据集       三部分组成。

    5、某计算机系统中 8台打印机,有K个进程竞争使用,每个进程最多需要3台打印机。该系统可

    能会发生死锁的K的最小值是        4    

    No.1: 2 – 2 – 2 – 2 可以死锁

    No.2: 3-3-2 总有一个可以先执行成功 不会死锁

    6、一个作业运行时间假定为 1 小时,它在系统中等待了 2 小时,则该作业的响应比

    是_____3___。 3/1

    7、由于页表放在内存中,故 CPU 在每存取一个数据时,都要_____2___次访问内存。

    第一次是访问内存中的页表,从中找到指定页的物理块号,再将块号与页内偏移量W拼接,以形成物理地址。第二次访问内存时,才是从第一次所得地址中获得所需数据。

    8、存储管理中常用         虚拟存储器        方式来摆脱主存容量的限制。

    9、分段存储管理方式更符合用户和程序员如下需求:方便编程、        信息共享      

            信息保护         、动态增长和           动态链接            

    10、虚拟存储器具有三个重要特征:         离散型     、对换性、      虚拟性       

    11、I/O控制方式有四种,它们是程序控制方式,   中断驱动    控制方式,      DMA  控制方式和通道控制

    方式。

     

    1.每隔5分钟问一次;                                程序I/O 方式(轮询)

    2.每一套试卷问一次;                           中断驱动I/O 控制方式(字节)

    3.每一天内一个科目攒的试卷问一次;                直接存储器访问DMA 控制方式(块)

    4.每天攒的所有科目试卷集中问一次;                     I/O 通道控制方式(几个块)

     

    12、Spooling 技术是在_____一台物理I/O设备_______上模拟________多台逻辑I/O设备______。

    13、设备分配程序分配外部设备时,先分配    设备      ,再分配控制器,最后分配      通道     

    14、对目录管理的要求有:    实现“按名存储”            提高目录的检索速度                     实现文件共享      

    和允许文件重名。

    15、目前常用的外存组织方式有:     连续组织方式         链式组织方式          索引组织方式   

    16、文件是具有     文件名         的一组相关       元素      的集合。

    17、判断一个进程是否存在,要看该进程的___PCB___是否存在。

    18、采用多道程序设计技术能够充分发挥___CPU__和 _____计算机系统部件___并行工作的能力。

    19、操作系统的三种基本类型是_____多道批处理系统___ 、______分时系统____和_____实时系统____。

    20、判断一个进程是否处于挂起状态,要看该进程是否在____内存中____,挂起状态又分为_____就绪__挂起和   ____阻塞____挂起。

    21、在一个单处理机系统中,若有4个用户进程,且假设当前时刻为用户态,则处于就绪队列

    的进程最多有____3___个,最少有___0____个。

    1. 读/写磁盘时,一般把磁盘的访问时间分成 ____寻道______时间、旋转时间和 ___延迟____时间三部分。
    2. 当一个进程独占处理器顺序执行时具有两个特性:______封闭__性和可再现性。
    3. 操作系统是控制和管理计算机系统的__硬件____和____软件__ 资源的。
    4. 使用页式内存管理方式时,往往采用____动态_____重定位方式来实现地址转换。
    5. 分页与分段的区别是,页是信息的物理单位,而段是信息的_____逻辑单位 _____ ; 页的大小是_____固定__的,而段的大小是不固定的,分页的逻辑地址空间是一维的,而分段的逻辑地址空间是___二维____的。
    6. 如果信号量的初始值为1,,则表示系统有__1_个资源;如果信号量的当前值为-2,则表示在该信号量上有__2__个进程等待。
    7. 在页式虚拟存储系统中,选择页面调度算法时应尽量注意减少或避免____抖动__现象的发生。
    8. 一个作业第一次运行用了5min,而第二次运行用了6min,这说明操作系统的___不确定性__特点。
    9. 在页式管理系统中,进程的若干个页被离散地存储在内存的多个存储块中,为了能找到每个页所对应的存储块,系统为每个进程建立一张____页表____。
    10. 采用段式地址结构的地址空间,标识某一进程的地址时,要同时给出___段号___和__段内地址_____,因此,段式地址空间是二维的。
    11. 判断资源分配图是否可以简化是_ _判断____死锁的方法。
    12. 将程序地址空间中的逻辑地址变换成物理地址的过程称为___重定位_____。
    13. 设备分配所需的数据结构有设备控制表、____控制器控制表___、_____通道控制表_____、_____系统设备表____。

     

    三、问答题

    1. 什么是操作系统?它的主要特征是什么?操作系统的作用可表现在哪几个方面?

    答:操作系统是配置在计算机硬件上的第一层软件,是对硬件系统的首次扩充。其主要作用是·管理好硬件设备,提高它们的利用率和系统的吞吐量,并未用户和应用程序提供一个简单接口,便于用户使用。

    它的主要特征是并发性、共享性、虚拟性、异步性

    OS的作用体现在三个方面:1.OS作为用户与计算机硬件系统的接口。2.OS作为计算机系统资源的管理者。3.OS实现了对计算机资源的抽象

     

    2  在操作系统中为什么要引入进程这一概念?

    答:为了使程序并发执行,并且可以对并发执行的程序加以描述和控制,

     

    3.为什么要引入对换?

    答:再多道程序环境下,一方面内存中的某些进程由于某时间尚未发生而被阻塞运行,党却占用了大量的内存空间,甚至有时导致所有进程都被阻塞而无进程可以运行,迫使CPU停止下来等待;另一方面,却有许多作业因内存空间不足,一直主流在外存,而不能进入内存运行,。显然这对系统资源使一种严重浪费,且使得系统吞吐量下降。为解决这一问题,系统中增设了对换设施。

     

    4. 为什么要引入动态重定位?

    答:进程在运行过程中经常需要在内存中移动位置,引入动态冲抵为的目的是为了满足程序的这种需要。动态重定位的实现需要一定的硬件支持,重定位的过程是由硬件地址变换机构在程序执行每条指令时自动完成的。

    5.比较段式和页试存储管理的异同。

    答:(1) 页是信息的物理单位,分页是为实现离散分配方式,以消减内存的外零头,提高内存的利用率。或者说,分页仅仅是由于系统管理的需要而不是用户的需要。段则是信息的逻辑单位,它含有一组其意义相对完整的信息。分段的目的是为了能更好地满足用户的需要。

        (2) 页的大小固定且由系统决定,由系统把逻辑地址划分为页号和页内地址两部分,是由机器硬件实现的,因而在系统中只能有一种大小的页面;而段的长度却不固定, 决定于用户所编写的程序,通常由编译程序在对源程序进行编译时,根据信息的性质来划分。

    (3) 分页的作业地址空间是一维的,即单一的线性地址空间,程序员只需利用一个记忆符,即可表示一个地址; 而分段的作业地址空间则是二维的,程序员在标识一个地址时,既需给出段名, 又需给出段内地址。

     

    6. 什么是虚拟存储器?其特征是什么?

    答:虚拟存储器是指具有请求调入功能和置换功能,能从逻辑上对内容容量进行扩充的一种存储系统。 特征:多次性,对换性,虚拟性

     

    7.为什么要引入设备独立性,什么是设备独立性,如何实现设备独立性?

    答:为了提高系统的可适应性和可扩展性,应用程序独立于具体使用的物理设备,应用程序逻辑设备名请求使用某类设备。

    实现:必须在驱动程序上设置一层设备独立性软件,执行所有设备的公有操作、完成逻辑设备名到物理设备名的转换,并对用户层软件提供统一接口。

     

     

    8.文件存储空间的管理有那几种常用的方法?

    答:空白文件目录,空白块链,位图示。

    ①空白文件目录:这种方法将盘空间的一个未分配区域称为一个空白文件,系统为所有的空白文件建立一个目录,每个空白文件在这个目录中建立一个表目。

    ②空白块链:这种方法将盘上的所有空白块用链接指针或索引结构组织成一个空白文件。

    ③位示图:它将文件存储器的存储空间建立一张位示图,用以反映整个盘空间的分配情况。

     

    9.对目录管理的主要要求是什么?

    答:实现“按名存取”

    提高对目录的检索速度

    文件共享

    允许文件重名

     

    10.什么是文件?文件系统的模型是什么?文件系统必须完成哪些工作?

    答:文件是指由创建者所定义、具有文件名的一组相关元素的集合。

        模型:文件对象及其属性,对对象操纵和管理的如那件集合、文件系统的接口

        工作:文件的存取、目录管理、文件的组织、文件存储空间的管理、文件操作、文件的共享保护和保密

    展开全文
  • 【Linux】Linux进程简介及其五种状态

    万次阅读 2018-07-24 21:42:36
    由操作系统定义,并由操作系统所操控的一个特殊的数据结构实例叫做进程。它连接了用户代码,拥有代码运行所需的独立内存空间,在调度器的调度下使用分配给它的处理器时间片来运行。   进程及其私有内存空间 进程...

    由操作系统定义,并由操作系统所操控的一个特殊的数据结构实例叫做进程。它连接了用户代码,拥有代码运行所需的独立内存空间,在调度器的调度下使用分配给它的处理器时间片来运行。

     

    进程及其私有内存空间

    进程类似于UCOSIII中的任务,它也是用户应用程序可执行代码在系统中的一个运行过程。系统中用来表示进程身份和存在的也是控制块,只不过叫做进程控制块。进程与UCOSIII任务之间最重要的一个区别就是:进程具有自己的内存空间,进程的程序代码就运行在这个归自己所有的内存空间之中。当然,进程的控制块记录了进程的这个私有内存空间。

    在UCOSIII中提到,一个任务的组成部分:任务堆栈、任务控制块、任务代码。同样Linux的进程除了这三块,同时还需要进程自己的内存空间。一个典型的进程控制块如下图所示:

    进程控制块的成员mm就是指向进程内存控制块的指针,而这个进程内存控制块则关联了进程的虚拟空间结构和表示了它所占用的物理内存空间结构。

    所谓进程私有内存空间,就是系统使程序运行为程序分配的程序空间。保证程序具有私有空间的基础就是虚拟内存技术。系统把程序运行所需的物理内存页框地址映射成虚拟地址,并以页表的形式提供给了程序,从而使得程序只能通过页表运行于自己的物理空间而不会干扰到系统中的其它进程。

    结合前面关于Linux内存管理的讲解可知,Linux进程控制块中的mm成员如下图所示:

    文章参考:【Linux】Linux虚拟内存空间描述

    另外,由于Linux进程分为用户空间和内核空间两个部分,它有时运行于用户空间,有时运行于内核空间,因此为了保护各自的现场数据,一个进程还需要两个堆栈:用户堆栈和系统堆栈,如下图所示:

    最后区分一下进程和线程:在多任务系统中具有私有内存空间的正在运行的程序叫做进程,而没有私有内存空间的叫做线程。如此说来,其实UCOSIII的任务是划分到线程的。

     

    Linux进程的状态

    在Linux系统中,一个进程被创建之后,在系统中可以有下面5种状态。进程的当前状态记录在进程控制块的state成员中。

    就绪状态和运行状态

    就绪状态的状态标志state的值为TASK_RUNNING。此时,程序已被挂入运行队列,处于准备运行状态。一旦获得处理器使用权,即可进入运行状态。

    当进程获得处理器而运行时 ,state的值仍然为TASK_RUNNING,并不发生改变;但Linux会把一个专门用来指向当前运行任务的指针current指向它,以表示它是一个正在运行的进程。

    可中断等待状态

    状态标志state的值为TASK_INTERRUPTIBL。此时,由于进程未获得它所申请的资源而处在等待状态。一旦资源有效或者有唤醒信号,进程会立即结束等待而进入就绪状态。

    不可中断等待状态

    状态标志state的值为TASK_UNINTERRUPTIBL。此时,进程也处于等待资源状态。一旦资源有效,进程会立即进入就绪状态。这个等待状态与可中断等待状态的区别在于:处于TASK_UNINTERRUPTIBL状态的进程不能被信号量或者中断所唤醒,只有当它申请的资源有效时才能被唤醒。

    这个状态被应用在内核中某些场景中,比如当进程需要对磁盘进行读写,而此刻正在DMA中进行着数据到内存的拷贝,如果这时进程休眠被打断(比如强制退出信号)那么很可能会出现问题,所以这时进程就会处于不可被打断的状态下。

    停止状态

    状态标志state的值为TASK_STOPPED。当进程收到一个SIGSTOP信号后,就由运行状态进入停止状态,当受到一个SIGCONT信号时,又会恢复运行状态。这种状态主要用于程序的调试,又被叫做“暂停状态”、“挂起状态”。

    中止状态

    状态标志state的值为TASK_DEAD。进程因某种原因而中止运行,进程占有的所有资源将被回收,除了task_struct结构(以及少数资源)以外,并且系统对它不再予以理睬,所以这种状态也叫做“僵死状态”,进程成为僵尸进程。

    在进程的整个生命周期中,它可在5种状态之间转换。Linux进程5种状态之间的转换关系如下图所示:

    文章参考:Linux进程状态解析 之 R、S、D、T、Z、X (主要有三个状态)

    Linux有两类进程:一类是普通用户进程,它既可以在用户空间运行,又可通过系统调用进入内核空间,并在内核空间运行;另一类叫做内核进程,这种进程只能在内核空间运行。

     

    Linux的进程控制块

    在Linux中,线程、进程使用的是相同的核心数据结构。可以说,在Linux2.4的内核里只有进程,其中包含轻量进程(线程)。一个进程在核心中使用一个task_struct结构来表示,包含了大量描述该进程的信息。

    Linux系统中作为进程控制块(PCB)的数据结构叫做task_struct。这个进程控制块要负责记录和跟踪进程在系统中的全部信息。

    尽管task_struct数据结构庞大而复杂,但其成员可按功能分成一些组成部分。task_struct的数据结构应包含如下信息:

    • 进程的当前状态;
    • 调度信息:调度器需要知道这些信息,以便判断系统中进程的迫切度;
    • 进程标识:系统中每个进程都有一个进程标识pid;
    • 进程的通信信息:Linux支持经典的Unix IPC机制,如信号、管道和信号灯;支持系统V中的IPC机制,包括共享内存、信号灯和消息队列;
    • 进程与其他进程之间关系的信息:Linux中所有进程都是相互关联的。除了根进程外,所有进程都有一个父进程,也可能有子进程或者兄弟进程,所以每个进程的task_struct结构中要包含有指向其父进程、兄弟进程或子进程的指针;
    • 使用文件的信息:进程可自由地打开或关闭文件。进程的task_struct结构中包含一个指向文件系统及它所打开文件的指针;
    • 虚拟内存与物理内存关系的信息:所有进程都有自己的内存空间;
    • 计时器:核心需要记录进程的创建时间及其在其生命周期中消耗的CPU的时间;
    • 处理器中与进程有关的信息。

    Linux可以管理512个进程,每个进程的进程控制块指针都存放在一个数组中。为了使系统可快速访问正在运行的进程,Linux系统把当前运行进程的指针存放在指针变量current中。

    进程控制块task_struct的部分定义如下:

    struct task_struct {
    	volatile long state;	/* 进程的状态 */
    
    	unsigned long flags;	/* 与管理有关的状态信息 */
    
    	int prio, static_prio, normal_prio;        //优先级,静态优先级
    
    	struct list_head tasks;            //进程链表
    
    	struct list_head ptrace_children;
    	struct list_head ptrace_list;
    
    	struct mm_struct *mm, *active_mm;        //指向进程存储空间的指针
    
    	pid_t pid;                     //进程的pid
    	pid_t tgid;
    
    	struct task_struct *real_parent;     /* 真父进程指针 */
    	struct task_struct *parent;         /* 父进程指针 */
    
    	struct list_head children;	        /* 子进程链表 */
    	struct list_head sibling;	        /* 兄弟进程链表 */
    	struct task_struct *group_leader;	        /* threadgroup leader */
    
    	struct timespec start_time; 		/* monotonic time */
    	struct timespec real_start_time;	/* boot based time */
    
    	struct thread_struct thread;
    
            unsigned long rt_priority;            //实时优先级
    
    	struct fs_struct *fs;                //进程所在文件目录
    	struct files_struct *files;            //进程打开文件信息
        
            struct dentry *proc_dentry;            //proc文件的dentry
            struct backing_dev_info *backing_dev_info;
    
    	struct signal_struct *signal;                //信号
    	struct sighand_struct *sighand;
    
            ...
    
    };

    系统中把所有进程控制块组织为如下图所示的双向链表:

     

    展开全文
  • 进程状态详解

    千次阅读 2020-04-20 22:40:50
    ③阻塞状态(Block)也叫等待状态(Wait) 由于等待某项服务完成或者等待某个学号而不能运行的状态,比如等待系统调用,I/O操作等 2、进程三态模型 *就绪->运行:进程调度 *运行->就绪:时间片到或者被强行...
  • 进程的三种状态及转换

    千次阅读 2021-05-09 01:34:26
    通常,一个运行进程必须具有以下三种基本状态。就绪(Ready)状态进程已分配到除CPU以外的所有必要的资源,只要获得处理机便可立即执行,这时的进程状态称为就绪状态。执行(Running)状态进程已获得处理机,其程序...
  • 操作系统进程状态状态转换详解

    千次阅读 多人点赞 2019-11-01 10:28:55
    进程状态的转换与PCB详解 ​ 返回主目录 ​ 之前的有博文对进程和线程的区别进行了详细的介绍,并且...​ 注意:本博文中进程均是在传统操作系统中的进程,既是OS进行资源分配的基本单位,也是OS进行调度的一个...
  • 操作系统——进程状态与转换

    千次阅读 2019-08-30 09:40:41
    在单处理机环境下,每一时刻最多只有一个进程处于运行状态; 就绪状态:进程处于准备运行的状态,获得了除处理机之外的一切所需资源,一旦得到处理机即可运行。 阻塞状态,又称等待状态进程正在等待某一事件而...
  • 进程的挂起状态详细分析

    千次阅读 2020-04-21 10:17:35
    通常我们所认为的进程有五大状态,新建态,就绪态,阻塞...交换的需要 前面图中三基本状态(就绪态、运行态和阻塞态)提供了种为进程行为建立模型的系统方法,并指导操作系统的实现。 但是,可以证明往模型中增...
  • [进程]进程状态转换

    千次阅读 2013-04-28 18:57:58
    在单处理机系统中,只有一个进程处于执行状态; 在多处理机系统中,则有多个进程处于执行状态。 就绪(ready)态:进程具备运行条件,等待系统分配处理器以便运行的状态。 当进程已分配到除CPU以外的所有...
  • 什么是状态机?用C语言实现进程5状态模型

    千次阅读 多人点赞 2020-10-13 08:43:49
    一个健壮的状态机可以让你的程序,不论发生何种突发事件都不会突然进入一个不可预知的程序分支,本篇通过实现一个简单的进程5状态模型的状态机,让大家熟悉一下状态机的魅力。 定义 有限状态机(finite-state ...
  • 进程的描述与控制 操 作 系 统 所 具 有 的 四 大 特 征 也 都 是 基 于 进 程 而 形 成 的 , ...图中的每个结点可用来表示一个进程或程序段,乃至一条语句,结点间的有向边则表示两个结点之间存在的偏序(Partial Orde
  • 操作系统之进程状态和转换详解

    万次阅读 多人点赞 2017-04-22 19:15:31
    进程状态和转换三态模型一个进程从创建而产生至撤销而消亡的整个生命周期,可以用一组状态加以刻划,根据三态模型,进程的生命周期可分为如下三种进程状态: 1. 运行态(running):占有处理器正在运行 2. 就绪态...
  • 命令ps查看当前系统的进程状态

    千次阅读 2017-11-29 00:40:33
    命令ps查看当前系统的进程状态
  • 进程控制:状态、调度和优先级

    千次阅读 2019-05-02 21:05:31
    睡眠进程等待队列 TASK_KILLABLE 状态 TASK_STOPPED 状态和 TASK_TRACED 状态 EXIT_ZOMBIE 状态和 EXIT_DEAD 状态 进程调度概述 普通进程的优先级 完全公平调度的实现 普通进程的组调度 实时进程 CPU 的...
  • 操作系统大纲: 进程和线程知识体系: 1. 进程 在多程序系统中,操作系统调度CPU上... 在此期间,进程处于等待状态; 短期调度程序从就绪队列中选择另一个进程并将CPU分配给此进程。 这个过程被称为上下文切换。
  • 线程、进程状态

    千次阅读 2018-04-04 11:18:34
    线程的状态1、新建状态:新创建一个线程对象。2、就绪状态:线程对象创建后,其他线程调用了该对象的start()方法。该状态的线程位于“可运行的线程池”中,变得可运行,只等待获取CPU的使用权。即在就绪状态进程...
  • 操作系统进程相关知识学习
  • 实验进程状态转换及PCB的模拟

    万次阅读 多人点赞 2018-04-07 17:16:58
    实验目的1)加深对进程概念的理解。...在操作系统中,描述一个进程除了需要程序和私有数据之外,最主要的是需要一个与动态过程相联系的数据结构,该数据结构用来描述进程的外部特性(名字、状态等)以...
  • LINUX_进程状态

    千次阅读 2018-09-08 17:15:30
    示例:查看自己的进程 :ps -l 示例二:查看系统所有进程 ps aux 示例三:查看特定的进程 ps aux | grep threadx 2. pstree 查看进程树 示例:查看所有进程树 pstree -A 3. top 实时显示进程信息 示例:...
  • 顺序性:每操作都在下操作开始前结束,严格按照顺序; 封闭性:程序在封闭环境下执行,程序运行时占全机资源,资源的状态只有该程序才能改变,一旦程序开始执行,结果不受外界影响; 可再现性:初始状态和执行...
  • 就绪状态:当进程获得除CPU外的所有资源的时候,只要在获得CPU就可以执行(万事俱备只欠CPU)在一个系统中处于就绪状态进程可能有多个,通常将它们排成一个队列,称之为就绪队列。 执行状态进程获得CPU,其...
  • 使用ps命令查看进程状态

    千次阅读 2019-12-15 16:37:01
    使用ps命令查看进程状态 Linux中的ps命令是Process Status的缩写。ps命令用来列出系统中当前运行的那些进程。ps命令列出的是当前那些进程的快照,就是执行ps...等待状态(阻塞状态):此时进程在等待一个事件的发生...
  • 进程在创建时需要申请一个空白PCB,向其中填写控制和管理进程的信息,完成资源分配。==如果创建工作无法完成,比如资源无法满足,就无法被调度运行,把此时进程所处状态称为创建状态== 就绪状态(ready) :进程...
  • 如何杀掉D,Z状态进程

    千次阅读 2018-07-17 00:49:06
    original url: ... ... R- -可执行状态(运行状态)  只有在运行状态进程才有可能在CPU上运行,注意是可能,并不意味着进程一定在运行中。同一时刻可能有多个进程...
  • Linux C/C++编程之(十六)进程进程控制

    千次阅读 多人点赞 2020-07-07 11:47:43
    文章目录、概述 、概述
  • Linux中的ps命令是Process Status的缩写。... 等待状态(阻塞状态):此时进程在等待一个事件的发生或某种系统资源。在Linux系统中等待状态又细分为两种等待状态:可中断的等待状态和不可中断的等待状态。 ...
  • 程序的顺序执行和并发执行 顺序执行:按照顺序进行执行。...一组在逻辑上相互独立的程序或程序段在执行过程中其执行时间在客观上相互重叠,即一个程序尚未结束、另一个程序的执行已经开始的执行方式。 链接:多

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 167,955
精华内容 67,182
关键字:

一个进程当前处于等待状态