• 软件设计复习2


    操作系统基本原理

    操作系统:

    管理系统的硬件、软件、数据资源
           控制程序运行
           人机之间的接口
           应用软件与硬件之间的接口

    进程管理

    进程管理:进程状态、前趋图、PV操作、死锁问题
           存储管理:段页式存储、页面置换算法
           文件管理:索引文件、位示图
           微内核操作系统:虚设备与SPOOLING技术

    前驱图:

                                        

    进程状态:

    就绪(调度)-> 运行(等待某个事件)-> 等待(等待事件发生)-> 就绪

        运行(时间片到)-> 就绪

    PV操作

    临界资源:诸进程间需要互斥方式对其进行共享的资源,如打印机、磁带机等
           临界区:每个进程中访问临界资源的那段代码称为临界资源
           信号量:是一种特殊的变量,若 S>=0 表示某资源的可用数;若 S<0 则其绝对值表示阻塞队列中等待
           该资源的进程数
           P操作: S =S-1 --> S < 0 -->
           进程队列:
           V操作: S = S+1 --> S <= 0 -->
                                       

                           

    PV 操作(低级通讯方式):P 操作申请一个资源,V 操作释放一个资源

    PV操作练习1:

                        

    答:A、C
    点击查看答案

    PV操作练习2:

                           

    答:
    
     标记:每一个P标签都有一个V(S),对应一个P(S)
     则:P1->V(S1)-->P(S1)
    
           P2->V(S2)-->P(S2)
           P3->V(S3)-->P(S3)
           P4->V(S4)-->P(S4)
    点击查看答案

    前驱图和PV操作:

                     

    死锁:

    进程管理是操作系统的核心,但如果设计不当,就会出现死锁的问题;如果一个进程在等待一件不可能发生的事,则进程就死锁了,而如果一个或多个进程产生死锁,就会造成系统死锁
    产生死锁的四个必要条件:互斥条件,请求保持条件,不可剥夺条件,环路条件

    死锁的处理:预防;避免(银行家算法:先计算,如果分配资源后系统进入不安全状态则不予分配);检测(系统定时运行死锁检测程序);解除(资源剥夺法+撤销进程法)

    死锁练习1:

                   

    答:
       13个,
       先给每个进程分配所需资源-1 ,总数加起来再+1
       
       k:进程数  n:每一个进程所需资源
       k * (n - 1) +1
    点击查看答案

    页式存储组织

                        

    页式存储练习1:

                               

    答:D、B
    点击查看答案

    段式存储组织:

                        

    段页式存储:

                              

    页面淘汰算法练习1:

                      

    答: B、C
        一个块执行2次内存,一共6个块,则:6*2=12
        swap AB--->①
        A---> ②
         ——>③
    
        B--->④
         ——>⑤
    点击查看答案

    索引文件结构

                       

    索引文件结构练习1:

                         

    答:C、D
    点击查看答案

                         

    微内核操作系统

                        

    我是一个刚刚开始写博客的大可,内容有不详细或是错误的,还希望各位大佬私信我,我会进行纠正,谢谢啦!^-^
  • 相关阅读:
    wxpython快速入门
    python核心编程 第四章 和第五章
    python核心编程 第三章
    python核心编程 第二章 快速入门
    Nginx 使用札记
    PHP 函数总结
    node.js安装部署
    linux
    在Linux上安装Git
    php超级全局变量
  • 原文地址:https://www.cnblogs.com/sunjiaojiao/p/11225132.html
Copyright © 2020-2023  润新知