精华内容
下载资源
问答
  • windows知识点思维导图
    2021-11-22 23:27:42

    更多相关内容
  • 学习工具、网站、方法 ... 思维导图:总结归纳知识点 (xmind) makedown: typora 文本编辑器:VS code 视频播放器:potplayer(倍速) 开发环境: virtualBox 虚拟工具 免费开源 Ubuntu 14.04 LTS...

     学习工具、网站、方法
        分享代码的平台:GitHub、码云
         总结知识点平台:CSDN、博客园
         笔试面试题:牛客网、力扣(刷题)、PAT考试

         问答网站:思否、知乎、抖音、今日头条
         思维导图:总结归纳知识点 (xmind)
         makedown: typora
         文本编辑器:VS code
         视频播放器:potplayer(倍速)

    开发环境:
        virtualBox 虚拟工具 免费开源
        Ubuntu 14.04 LTS 
        vim 代码编辑器
        gcc 编译器

    linux系统介绍(UNIX)
        BCPL语言-> newB-> C语言-> UNIX-> Minix-> Linux
        Linux管理硬盘的能力强大,所以我们看到的只有一个分区
        / 根目录,所以文件都存储在它的下面
        ~ 用户主目录
        .       当前目录
        ..      上一级目录
        /bin    存储系统命令*
        /dev    存储设备文件(一切皆文件)
        /media  多媒体目录(U盘、光驱、挂的目录)
        /proc   记录了程序运行期间资源的使用情况
        /sbin   存储超级用户才能使用的系统命令
        /tmp    存储一些临时文件
        /boot   存储系统启动相关文件
        /etc    存储的各种软件的配置文件
        /lib    存储一些普通的库文件(静态库.a、共享库.so)*
        /mnt    存储与其他系统进行映射的目录文件
        /root   超级用户的目录(需要权限)
        /srv    存储一些系统启动后需要提取的数据文件        
        /usr    存储头文件*
        /home   存储用户主目录*
        /opt    存储安装的应用软件
        /run    存储一些临时文件
        /sys    存储系统相关的文件

        注意:目录结构是倒悬树结构,目录的切换只能上下,不能左右

    相对路径和绝对路径:
        绝对路径:    从跟目录开始描述一个位置 /user/include
        相对路径:    从当前位置(工作路径)描述另一个位置 ../include

    Linux的系统命令:
        常用命令:
            ls     显示当前目录下有哪些文件
            -a     显示当前目录下所有文件,以.开头的都是隐藏文件
            -l     显示文件的详细信息
            cd     进入一个目录
            clear  清理屏幕(ctrl+l)
            pwd    显示当前路径
            whoami 显示当前用户名

        文件相关的命令:
            注意:不是所有的功能都有对应的命令
            touch filename  创建文件
            rm filename     删除文件(不经过回收站,要慎重)
            cat/more/head/tail      查看文件
                cat     会把文件的内容全部显示到终端上,适合内容较少的文件
                more    从文件的开头分页显示,回车显示下一行,空格显示下一页,q退出
                head    只显示开头10行
                tail    只显示末尾10行
            cp src(源头) dest(目标)     复制文件
            mv src dest     移动文件,具备重命名文件的功能

        目录相关的命令:
            mkdir dirname       创建目录
                -p      可以创建多层目录
            rmdir dirname       删除目录(只能删除空目录)
                rm -rf      删除非空目录
            cp -rf src dest     复制目录
            mv src dest     移动目录
        
        网络相关的命令:
            ifconfig    查看网络配置信息
                windows 中查看是ipconfig
                sudo ifconfig etch0 10.0.2.xxx netmask 255.255。255.xxx     修改ip地址、子网掩码
                sudo ifconfig eth0 down     禁用网卡    
                sudo ifconfig eth0 up       启用网卡
            ping ip地址     测试网络连通性
                可以测试ip,亦可以测试网址
                ping 127.0.0.1本机地址,可以用来测试网卡是否正常
                windows     只测试4次,-t或/t 连续测试,ctrl+c结束
     

    展开全文
  • 王道考研 操作系统知识点汇总(目录+思维导图)

    千次阅读 热门讨论 2022-01-18 09:49:29
    操作系统的内核1.1.5中断和异常思维导图本节内容1.1.6系统调用思维导图本节内容2.1.1进程的定义、组成、组织方式思维导图本节内容2.1.2进程的状态与转换思维导图本节内容2.1.3进程控制思维导图本节内容2.1.4进程通信...

    第一章 计算机系统概述

    文章目录

    前言

    • 参考书籍《计算机操作系统》 汤小丹、《2022年 操作系统考研复习资料》 王道。(个人认为王道的书整体顺序安排更合理,更好用)
    • B站王道计算机考研 操作系统视频课
    • 原本是小张期末考试整理的王道笔记,后来复习过程中使用笔记可以快速的根据目录或者文字检索去查找某个概念、知识点。所以分享给大家,需要文本文件的可以留言评论。
    • 思维导图和文字内容是手敲的,所以可能有一些错别字,评论我会修改。
    • 如果只是为了期末考试可以看我的这篇操作系统期末考试总结_鬼才小张同学的博客-CSDN博客
    • 码字不易,严禁盗用!好用的话给小张个点赞收藏!

    1.1.1 操作系统的概念、功能和目标

    思维导图

    img-ldiK11oa-1642470697367

    本节内容

    操作系统(Operating System,OS) 是指控制和管理整个计算机系统的硬件和软件资源,并合理地调度计算机的工作和资源分配,以提供给用户和其他软件方便的接口和环境,它是计算机系统中最基本的系统软件。

    eg:进程是一个程序执行过程,执行前需要将该程序放到内存中,才能被CPU处理。
    在这里插入图片描述

    功能:

    1. 命令接口,允许用户直接使用。联机命令接口:用户说一句,系统做一句,eg:使用cmd执行一句命令。脱机命令接口,用户说一堆,系统做一堆,脱机命令接口=批处理命令接口,eg:执行一个.bat的文件。
    2. 程序接口,只能通过用户间接使用,。eg:调用C:\Windows\System32\user32.dll。
    3. GUI,图形用户界面。用户可以使用形象的图形界面进行操作,而不再需要记忆复杂的命令、参数。eg:在Windows操作系统中,删除文件夹只需要把文件拖拽到回收站。

    目标:

    1. 方便性:使用编译命令将用户采用高级语言书写的程序翻译成机器代码或者直接 通过OS所提供的各种命令操作计算机系统,极大地方便用户,使计算机变得易学易用
    2. 有效性:提高系统资源的利用率,提高系统的吞吐量。
    3. 可扩充性:方便地增添新的功能和模块。
    4. 开放性:系统能遵循国际标准规范,所开发的软硬件都能彼此兼容。

    1.1.2操作系统的特征

    理解并发和并行的区别,并发和共享互为存在条件,没有并发和共享,就谈不上虚拟和异步,因此并发和共享是操作系统的两个最基本特征

    思维导图

    在这里插入图片描述

    本节内容

    特征

    1. 并发:指两个或多个事件在同一时间间隔内发生。这些事件宏观上是同时发生地,但微观上是交替发生的。操作系统的并发性指计算机系统中同时存在着多个运行着的程序。并行:指两个或多个事件在同一时刻同时发生。
    2. 共享:指资源共享,是指系统中的资源可供内存中多个并发执行的进程共同调用。

    ​ 互斥共享:系统中的某些资源,虽然可以提供给多个进程使用,但一个时间段内只允许一个进程访问该资源。

    ​ 同时共享:系统中的某些资源,允许一个时间段内由多个进程“同时”对它们进行访问。(宏观上是同时,微观上可能是交替对资源进行 访问,即分时共享)。

    ​ eg:使用QQ发送文件A,使用微信发送文件B

    ​ 两个进程正在并发执行(并发性)

    ​ 需要共享地访问硬盘资源(共享性)

    ​ eg:使用QQ和微信视频,同一时间段内摄像头只能分配给其中一个进程(互斥共享)

    ​ 使用QQ发送文件A,同时使用微信发送文件B,宏观上看,两边都在同时读取并发送文件,说明两个进程都在访问硬盘资源,从 中读取数据。从微观上看,两个进程是交替着访问硬盘的(互斥共享)。

    1. 虚拟:是指把一个物理上的实体变为若干个逻辑上的对应物。物理实体(前者)是实际存在的,而逻辑上对应物(后者)是用户感受到的。

    ​ eg:一个程序需要放入内存并给他分配CPU才能执行,那么为什么单核CPU可以同时运行多个程序。因为虚拟处理技术,实际上只有 一个单核CPU,在用户看来似乎由多个CPU同时为自己服务。

    1. 异步:在多道程序环境下,允许多个程序并发执行,但由于资源有限,进程的执行不是一贯到底的,而是走走停停,以不可预知的速度向前推进,这就是进程的异步性。

      eg:在这里插入图片描述

    1.1.3操作系统的发展与分类

    思维导图

    在这里插入图片描述

    本节内容

    手工操作阶段: 早期的操作方式是由程序员将事先已经穿好孔的纸带(或卡片),装入纸带输入机(或卡片输入机),再启动它们将纸带(或卡片)上的程序和数据输入计算机,然后启动计算机运行。仅当程序运行完毕并取走计算结果后,才允许下一用户上机。

    在这里插入图片描述

    缺点: 1).用户独占全机。即一台计算机的全部资源由上机用户所独占。

    ​ 2).人机速度矛盾导致资源利用率极低。CPU等待人工操作。当用户进行装带(卡)、卸带(卡)等人工操作时,CPU及内存等资源是空闲的。

    单道批处理系统: 引入脱机输入/输出技术(用磁带完成),并监督程序负责控制作业的输入、输出。

    利用外围机把纸带读入磁带

    在这里插入图片描述

    优点:(自动性)缓解了一定程序的人机速度矛盾,资源利用率有所提升。

    缺点:(顺序性、单道性)内存中仅能有一道程序运行,只有该程序运行结束之后才能调入下一道程序。CPU有大量的时间是在空闲等待I/O完成。资源利用率依然很低。

    多道批处理系统: 允许多个程序同时进入内存并允许他们在CPU中交替地运行。这些程序共享系统中的各种硬/软件资源。当一道程序因I/O请求而暂停运行时,CPU便立即转去运行另一道程序。

    在这里插入图片描述

    优点: 多道程序并发执行,共享计算机资源。资源利用率大幅提升,CPU和其他资源保持"忙碌"状态,系统吞吐量大。

    缺点: 用户响应时间长,没有人机交互功能(用户提交自己的作业之后就只能等待计算机处理完成,中间不能控制自己的作业执行)。

    在这里插入图片描述

    img-wH45AuR6-1642470535415

    分时操作系统: 计算机以时间片为单位,轮流为各个用户/作业服务,各个用户可通过终端与计算机进行交互。

    img-QmGbXGGI-1642470535416

    优点: 用户请求可以被即时响应,解决了人机交互问题。允许多个用户同时使用同一台计算机,并且用户对计算机的操作相互独立,感受不到别人的存在。

    缺点:不能优先处理一些紧急任务。操作系统对各个用户/作业都是完全公平的,循环地为每个用户/作业服务一个时间片,不区分任务的紧急性。

    实时操作系统: 在实时操作系统的控制下,计算机系统接收到外部信号后及时进行处理,并且要在严格的时限内处理完时件。实时操作系统的主要特点是及时性和可靠性。分时操作系统分为硬实时系统和软实时系统。硬实时系统: 必须在绝对严格的规定时间内完成处理。eg:导弹控制系统、自动驾驶系统。软实时系统: 能接受偶尔违反时间规定。eg:12306火车订票系统。

    优点: 能够优先响应一些紧急任务,某些紧急任务不需要时间片排队。

    以下做简单了解

    网络操作系统:是伴随着计算机网络的发展而诞生的,能把网络中各个计算机有机地结合起来,实现数据传送等功能,实现网络中各种资源地共享(eg:文件共享)和各台计算机之间地通信(eg:Windows NT就是一种典型地网络操作系统,网站服务器就可以使用)。

    分布式操作系统:主要特点是分布性和并行性。系统中的各台计算机地位相同,任何工作都可以分布在这些计算机上,由它们并行、协同完成个人任务。

    个人计算机操作系统:eg:Windows XP、MacOS,方便个人使用。

    1.1.4操作系统的运行机制与体系结构

    指令与代码有什么区别?

    eg:image-20211229174953413

    指令就是处理器(CPU)能识别、执行的最基本命令。

    新的问题:有的指令“人畜无害”。有的指令有很高的权限,eg:内存清零指令,如果用户程序可以使用这个指令,就意味着一个用户可以将其他用户的内存数据随意清零,这样做很危险。

    思维导图

    在这里插入图片描述

    本节内容

    1.运行机制

    两种指令

    特权指令:如内存清零指令,不允许用户程序使用。

    非特权指令:如普通的运算指令。

    两种处理器状态

    核心态(管态):特权指令,非特权指令都能执行。

    用户态(目态):只能执行非特权指令。

    #### 两种程序

    内核程序:操作系统的内核程序是系统的管理者,既可以执行特权指令,也可以执行非特权指令,运行在核心态。

    应用程序:为了保证系统运行安全,普通应用程序只能执行非特权指令,运行在用户态。

    2.操作系统的内核

    内核是计算机上配置的底层软件,是操作系统最基本、最核心的部分。

    实现操作系统内核功能的那些程序就是内核程序

    大内核:将操作系统的主要功能模块都作为系统内核,运行在核心态。优点,高性能。缺点,内核代码庞大,结构混乱,难以维护

    微内核:只要把基本的功能保留在内核。优点,内核功能少,结构清晰,方便维护。缺点:需要频繁地在核心态和用户态之间切换,性能低。

    eg:操作系统地体系结构问题与企业管理问题很相似。

    内核就是企业的管理层,负责一些重要地工作。只有管理层才能执行特权指令,普通员工只能执行非特权指令用户态、核心态之间地切换相当于普通员工和管理层之间的工作交接。

    大内核:企业初创时体量不大,管理层的人会负责大部分的事情。优点是效率高,缺点是组织结构混乱,难以维护。

    微内核:随着企业体量越来越大,管理层只负责最核心的一些工作。优点是组织结构清晰,方便维护。缺点是效率低。

    1.1.5中断和异常

    思维导图

    在这里插入图片描述

    本节内容

    各个程序只能串行执行,系统资源利用率低。

    img-8X3490fE-1642470535420

    中断机制的诞生:为了解决资源利用率低,人们发明了操作系统(作为计算机的管理者),引入中断机制,实现了多道程序并发执行。

    本质:发生中断就意味着需要操作系统介入,开展管理工作。

    1. 当中断发生时,CPU立即进入核心态
    2. 当中断发生后,当前运行的进程暂停运行,并由操作系统内核对中断进行处理
    3. 对于不同的中断信号,会进行不同的处理

    ​ 发生了中断,就意味着需要操作系统介入,开展管理工作。由于操作系统的管理工作(比如进程切换、分配I\O设备等)需要使用特权指令,因此CPU要从用户态转换为核心态。中断可以使CPU从用户态切换为核心态,使操作系统获得计算机的控制权。有了中断,才能实现多道程序并发执行。

    2:30-6:20有详细讲解动画过程。

    王道计算机考研 操作系统

    用户态、核心态之间的切换是怎么实现的?

    用户态→核心态是通过中断实现的。并且中断是唯一途径。

    核心态→用户态的切换是通过执行一个特权指令,将程序状态字(RSW)的标志位设置为“用户态”

    外中断的处理过程

    在这里插入图片描述

    1.1.6系统调用

    思维导图

    在这里插入图片描述

    本节内容

    什么是系统调用?有什么作用?
    操作系统作为用户和计算机硬件之间的接口,需要向上提供一些简单易用的服务。主要包括命令接口和程序接口。其中,程序接口由一组系统调用组成。

    “系统调用”是操作系统提供给应用程序(程序员/编程人员)使用的接口,可以理解为一种可供应用程序调用的特殊函数,应用程序可以发出系统调用请求来获得操作系统的服务。

    应用程序通过系统调用请求操作系统的服务,系统中的各种共享资源都由操作系统统一掌管,因此在用户程序中,凡是与资源有关的操作(如储存分配、I/O操作、文件管理等),都必须通过系统调用的方式向操作系统提供服务请求,由操作系统代为完成,这样可以保证系统的稳定性和安全性,防止用户进行非法操作。

    系统调用与库函数的区别

    在这里插入图片描述

    系统调用背后地过程

    img-VwCL7MEu-1642471049694

    第二章 进程管理

    2.1.1进程的定义、组成、组织方式

    思维导图

    img-ITb1HTnJ-1642470535421

    本节内容

    进程的概念

    img-7P47Wmf1-1642470535422

    img-m4OhYCqu-1642470535423

    进程的组成

    进程(进程实体)由程序段、数据段、PCB三部分组成。

    进程的组织

    在一个系统中,通常有数十、数百乃至数千个PCB。为了能对他们加以有效的管理,应当用适当的方式把这些PCB组织起来。
    注:进程的组成讨论的是一个进程内部由哪些部分构成的问题,而进程组织讨论的是多个进程之间的组织方式问题。

    链接方式

    img-HfpXIfA8-1642470535423

    索引方式

    img-MDTvDDfU-1642470535424

    进程的特征

    进程和程序是两个截然不同的概念,相比于程序,进程拥有以下特征:

    1. 动态性(最基本特征):进程是程序的一次执行过程,是动态地产生、变化和消亡地。
    2. 并发性:内存中有多个进程实体,各进程可并发执行。
    3. 独立性:进程是能独立运行、独立获得资源、独立接受调度地基本单位
    4. 异步性:各进程按各自独立的、不可预知地速度向前推进,操作系统要提供“进程同步机制”来解决异步问题,可能导致运行结果地不确定性。
    5. 结构性:每个进程都会配置一个PCB。结构上看,进程由程序段、数据段、PCB组成。

    2.1.2进程的状态与转换

    思维导图

    本节内容

    进程是程序的一次执行。在这个执行过程中,有时进程正在被CPU处理,有时需要等待CPU服务,可见,进程的状态是会有各种变化。为了方便对各个进程的管理,操作系统需要将进程合理地划分为几种状态。

    三种基本状态

    运行态:占有CPU,并在CPU上运行
    就绪态:已经具备运行条件,但由于没有空闲CPU,而暂时不能运行。
    阻塞态:因等待某一事件而暂时不能运行。
    注意单核处理机环境下,每一时刻最多只有一个进程处于运行态。双核环境下可以同时有两个进程处于运行态。

    另外另种状态

    创建态:进程正在被创建,操作系统为进程分配资源、初始化PCB。

    终止态:进程正在从系统中撤销,操作系统回收进程拥有的资源、撤销PCB。

    进程的状态转换

    2.1.3进程控制

    思维导图

    本节内容

    什么是进程控制?
    进程控制的主要功能是对系统中的所有进程实施有效的管理,它具有创建新进程、撤销已有进程、实现进程状态转换等功能。
    简单理解:进程控制就是要实现进程状态转换。

    如何实现进程控制?动画讲解

    1:13-5:00

    王道计算机考研 操作系统

    原语实现进程控制。原语的特点是执行期间不允许中断,只能一气呵成。
    这种不可被中断的操作即原子操作。原语采用“关中断”和开中断指令实现。

    img-kglJ6feI-1642471273094

    关/开中断指令的权限非常大,必然是只允许在核心态下执行的特权指令

    进程控制相关的原语

    img-snTWOHIG-1642470535427

    img-GR6t26zu-1642471299824

    各原语可以实现怎样状态转换,各原语大概做了哪些事(理解了在选择题分析出答案即可,不用背)

    2.1.4进程通信

    思维导图

    2

    本节内容

    什么是进程通信
    进程通信就是指进程之间的信息交换。进程是分配系统资源的单位(包括内存地址空间),因此各进程拥有的内存地址空间相互独立
    为了保证安全,一个进程不能直接访问另一个进程的地址空间。但是进程之间的信息交换又是必须实现的。为了保证进程间的安全通信,操作系统提供了一些方法。

    img-LcQGUACZ-1642470535427

    共享存储

    img-HVW7cioK-1642470535428

    管道通信

    img-TUirJ0jb-1642470535428

    消息传递

    进程间的数据交换以格式化的消息为单位。进程通过操作系统提供的“发送消息/接受消息”两个原语进行数据交换。动画讲解9:00-11:00

    王道计算机考研 操作系统

    2.1.5线程概念和多线程模型

    思维导图

    img-eVxcCmwO-1642470535428

    本节内容

    什么是线程?为什么要引入线程?
    还没引入进程之前,系统中各程序只能串行执行。
    image-20211231164308984

    可以把线程理解为"轻量级进程"。线程是一个基本的CPU执行单元,也是程序执行流的最小单位。引入线程之后,不仅是进程之间可以并发,进程内的各线程之间也可以并发,从而进一步提升了系统的并发度,使得一个进程内也可以并发处理各种任务(如QQ视频、文字聊天、传文件)。

    引入线程后,进程只作为除CPU之外的系统资源分配单元(如打印机、内存地址空间等都是分配给进程的)。

    image-20211231164541273

    引入线程机制后,有什么变化?

    image-20211231170020181

    image-20211231165407124

    线程的属性

    image-20211231170148290

    线程的实现方式

    用户级线程

    4

    内核级线程

    9

    二者组合

    多线程模型

    在同时支持用户级线程和内核级线程的系统中,由几个用户级线程映射到几个内核级线程的问题引出了“多线程模型”问题。

    多对一

    image-20211231171211310

    一对一模型

    image-20211231171424466

    多对多,集二者之所长

    image-20211231171537118

    2.2.1处理机调度的概念、层次

    思维导图

    image-20220101143448206

    本节内容

    调度的基本概念

    image-20220101141546312

    调度的三个层次-高级调度

    image-20220101141920529

    中级调度

    image-20220101142640346

    补充知识:进程的挂起状态与七状态模型

    暂时调到外存等待的进程状态为挂起状态(挂起态)
    挂起态又可以进一步细分为就绪挂起、阻塞挂起两种状态。
    image-20220101143102087

    低级调度

    image-20220101143143355

    三层调度的联系、对比

    image-20220101143349564

    2.2.2进程调度的时机、切换与过程

    思维导图

    image-20220101145114707

    本节内容

    进程调度的时机

    进程调度(低级调度),就是按照某种算法从就绪队列中选择一个进程为其分配处理机。

    image-20220101144114049

    进程调度的方式

    image-20220101144607827

    进程与进程切换过程

    image-20220101145008664

    2.2.3调度算法的评价指标

    思维导图

    image-20220101163233145

    本节内容

    CPU利用率

    CPU“忙碌”的时间占总时间的比例
    利用率= 忙 碌 时 间 总 时 间 \frac{忙碌时间}{总时间}

    image-20220101145635949

    系统吞吐量

    对于计算机来说,希望能用尽可能少的时间处理完尽可能多的作业。
    单位时间内完成作业的数量

    系统吞吐量= 总 共 完 成 了 多 少 道 作 业 总 共 花 了 多 少 时 间 \frac{总共完成了多少道作业}{总共花了多少时间}

    eg:某计算机系统处理完10道作业,共花费100s,则系统吞吐量为?

    10/100=0.1 道/s

    周转时间

    对于计算机的用户来说,他很关心自己作业从提交到完成花了多少时间。
    周转时间指从作业被提交给系统开始,到作业完成为止的这段时间间隔。

    它包括四部分:作业在外存后备队列上等待作业调度(高级调度)时间、进程在就绪队列上等待进程调度(低级调度)的时间、进程在CPU上执行的时间、进程等待I/O操作完成的时间。后三项在一个作业的整个处理过程中,可能多次发生。

    (作业)周转时间=作业完成时间-作业提交时间

    平均周转时间= 各 作 业 周 转 时 间 之 和 作 业 数 \frac{各作业周转时间之和}{作业数}

    带权周转时间= 作 业 周 转 时 间 作 业 实 际 运 行 时 间 \frac{作业周转时间}{作业实际运行时间} = 作 业 完 成 时 间 − 作 业 提 交 时 间 作 业 实 际 运 行 时 间 \frac{作业完成时间-作业提交时间}{作业实际运行时间}

    平均带权周转时间= 各 作 业 带 权 周 转 时 间 之 和 作 业 数 \frac{各作业带权周转时间之和}{作业数}

    等待时间

    计算机的用户希望自己的作业尽可能少的等待处理机。
    等待时间指进程/作业处于等待处理机状态时间之和,等待时间越长,用户满意度越低。

    image-20220101151253984

    响应时间

    对于计算机用户来说,会希望自己的提交请求(比如通过键盘输入了一个调试命令)尽早地开始被系统服务、回应。
    响应时间指从用户提出请求首次产生响应所用的时间。

    2.2.4FCFS、SJF、HRRN调度算法

    思维导图

    image-20220101173418259
    在这里插入图片描述

    image-20220101192601504

    本节内容

    各种调度算法的学习思路

    1. 算法思想
    2. 算法规则
    3. 这种调度算法是用于作业调度还是进程调度
    4. 抢占式?非抢占式
    5. 优点和缺点
    6. 是否会导致饥饿

    先来先服务

    按照到达的先后顺序调度,事实上就是等待时间越久的越优先得到服务。

    eg:

    进程到达时间运行时间完成时间等待时间平均等待时间周转时间平均周转时间带权周转时间平均带权周转时间
    P107704.7578.7513.25
    P22411592.25
    P34112788
    P454167112.75

    image-20220101164637257

    注意I/O操作

    优点:公平、算法实现简单

    缺点:排在长作业(进程)后面的短作业需要等待很长时间,带权周转时间很大,对短作业来说用户体验不好。即,FCFS算法对长作业有利,对短作业不利

    不会造成饥饿

    image-20220101173418259

    短作业优先

    最短的作业/进程优先得到服务(所谓“最短”,是指要求服务时间最短)。

    eg:非抢占式的短作业优先算法 P1→P3→P2→P4

    进程到达时间运行时间完成时间等待时间平均等待时间周转时间平均周转时间带权周转时间平均带权周转时间
    P1077047812.5625
    P224126102.5
    P3418344
    P454167112.75

    image-20220101171211323

    抢占式的短作业优先算法 P1(5)→P2(2)→P3(0)→P2(0)→P4(0)→P1(0)

    image-20220101171828602

    image-20220101172007490

    注意

    1. 如果题目中未特别说明,所提到的"短作业/进程优先算法"默认非抢占式
    2. 很多书上都会说“SJF 调度算法的平均等待时间、平均周转时间最少”。严格来说,这个表述是错误的,不严谨的。之前的例子表明,最短剩余时间优先算法得到的平均等待时间、平均周转时间还要更少。应该加上一个条件==“在所有进程同时可运行时,采用SJF调度算法的平均等待时间、平均周转时间最少”,或者说“在所有进程都几乎同时到达==时,采用SJF调度算法的平均等待时间、平均周转时间最少”。如果不加上述前提条件,则应该说“抢占式的短作业/进程优先调度算法(最短剩余时间优先,SRNT算法)的平均等待时间、平均周转时间最少”
    3. 虽然严格来说,SJF的平均等待时间、平均周转时间并不一定最少,但相比于其他算法(如FCFS) ,SJF依然可以获得较少的平均等待间、平均周转时间。
    4. 如果选择题中遇到“SJF算法的平均等待时间、平均周转时间最少”的选项,那最好判断其他选项是不是有很明显的错误,如果没有更合适的选项,那也应该选择该选项。

    优点:"最短的"平均等待时间、平均周转时间

    缺点:不公平。对短作业有利,对长作业不利。可能产生饥饿现象。另外,作业/进程的运行时间是由用户提供的,并不一定真实,不一定能做到真正的短作业优先。

    会导致饥饿。如果源源不断地有短作业/进程到来,可能使长作业/进程长时间得不到服务,产生==“饥饿"现象。如果一直得不到服务,则成为"饿死”==。

    image-20220101173453574

    最高相应比优先

    在每次调度时先计算各个作业/进程的响应比,选择响应比最高的作业/进程为其服务。

    响 应 比 = 等 待 时 间 + 要 求 服 务 时 间 要 求 服 务 时 间 \textcolor{red}{响应比}=\frac{等待时间+要求服务时间}{要求服务时间} =+

    eg:

    image-20220101192254894

    综合考虑了等待时间和运行时间(要求服务时间)
    等待时间同时时,要求服务时间短的优先(SJF的优点)
    要求服务时间相同时,等待时间长的优先(FCFS的优点)
    对于长作业来说,随着等待时间越来越久,其响应比也会越来越大,从而避免了长作业饥饿的问题
    不会导致饥饿

    image-20220101192601504

    总结

    image-20220101192800779

    2.2.5时间轮转法、优先级、多级反馈队列

    思维导图

    image-20220101200745983

    image-20220101202425058

    image-20220101204610149

    本节内容

    时间轮转法

    按照各个进程到达就绪队列地顺序,轮流让各个进程执行一个时间片(eg:100ms)。若进程未在一个时间片内执行完,则剥夺处理机,将进程重新放入就绪队列队尾重新排队。

    eg:时间片大小为2

    image-20220101195732061

    时间片大小为5

    image-20220101195951420

    时间片太大或太小有什么影响?

    如果时间片太大,使得每个进程都可以在一个时间片内就完成,则时间片轮转调度算法退化为先来先服务调度算法,并且会增大进程响应时间,因此时间片不能太大
    另一方面,进程调度、切换是有时间代价的(保存、恢复运行环境),因此如果时间片太小,会导致进程切换过于频繁,系统会花大量的时间来处理进程切换,从而导致实际用于进程执行的时间比例减少。可见时间片也不能太小

    eg:

    image-20220102000404709

    image-20220101200741098

    优先级

    每个作业/进程有各自的优先级,调度时选择优先级最高的作业/进程。

    eg:非抢占式

    image-20220101201807140

    ​ 抢占式

    image-20220101202004957

    补充知识

    image-20220101202340154

    优点:用于优先级区分紧急程度、重要程度,适用于实时 操作系统。可灵活的调整对各种作业/进程的偏好程度。
    缺点:若源源不断地有高优先级进程到来,则可能导致饥饿。

    会导致饥饿。
    image-20220101202425058

    多级反馈队列

    1. 设置多级就绪队列,各级队列优先级从高到低,时间片从小到大。
    2. 新进程到达时先进入第1级队列,按FCFS原则排队等待被分配时间片,若用完时间片进程还未结束,则进程进入下一级队列队尾。如果此时已经是在最下级的队列,则重新放回该队列队尾。
    3. 只有第K级队列为空时,才会为K+1级队头的进程分配时间片。

    eg:动画讲解30:00-35:00

    王道计算机考研 操作系统

    优缺点:对各类型进程相对公平(FCFS优点);每个新到达的进程都可以很快就得到响应(RR的优点);短进程只用较少的时间就可完成(SPF的优点);不必实现估计进程的运行时间(避免用户作假);可灵活地调整对各类进程地偏好程度,比如CPU密集型进程、I/O密集型进程(扩展:可以将因I/O而阻塞地进程重新放回到原队列,这样I/O型进程就可以保持较高优先级)。

    image-20220101204610149

    总结

    image-20220101204840613

    2.3.1进程同步、进程互斥

    思维导图

    image-20220102142756177

    本节内容

    什么是进程同步?

    并发性带来了异步性,有时需要通过进程同步解决这种异步问题。有的进程之间需要相互配合完成工作,各进程的工作推进需要遵守一定的先后顺序。

    image-20220102141902033

    什么是进程互斥?

    对临界资源的访问,需要互斥的进行。即同一时间段内只能允许一个进程访问该资源。

    image-20220102142023621

    对临界资源的互斥访问,可以在逻辑上分为四部分:

    image-20220102142147423

    为了实现对临界资源的互斥访问,同时保证系统整体性能,需要遵循以下规则:

    1. 空闲让进。临界区空闲时,应允许一个进程访问。
    2. 忙则等待。临界区正在被访问时,其他试图访问的进程需要等待。
    3. 有限等待。要在有限时间内进入临界区,保证不会饥饿。
    4. 让权等待。进不了临界区的进程,要释放处理机,防止忙等。

    2.3.2进程互斥的软件实现方法

    思维导图

    image-20220102152042168

    本节内容

    单标志法

    image-20220102145554278

    双标志先检查法

    如果在②发生进程切换,P1进程也满足访问临界区条件,所以违反忙则等待原则
    image-20220102150507528

    双标志后检查法

    image-20220102151258126

    Peterson算法

    image-20220102151821916

    2.3.3进程互斥的硬件实现方法

    思维导图

    image-20220102153732468

    本节内容

    中断屏蔽方法

    image-20220102153109616

    TestAndSet指令

    image-20220102153452800

    Swap指令

    image-20220102153644616

    2.3.4信号量机制

    思维导图

    image-20220102161748812

    本节内容

    信号量机制

    用户进程可以通过使用操作系统提供的一对原语来对信号量进行操作,从而很方便的实现了进程互斥、进程同步。

    image-20220102155049365

    整型信号量

    image-20220102155747347

    记录型信号量

    image-20220102160748785

    image-20220102161600962

    eg:动画17:00-23:00

    王道计算机考研 操作系统

    2.3.5用信号量实现进程互斥、同步、前驱关系

    思维导图

    image-20220102212945669

    本节内容

    信号量机制实现进程互斥

    P操作是对资源的申请,V操作是对资源的释放。P、V操作必须成对出现

    image-20220102210339530

    信号量机制实现进程同步

    image-20220102211049431

    信号量机制实现前驱关系

    image-20220102212634034

    2.3.6生产者-消费者问题

    本节内容

    问题描述

    image-20220102225832927

    image-20220102230322102

    实现

    image-20220102232308511

    实现互斥的P操作一定要在实现同步的P操作之后。

    image-20220102232819580

    总结

    image-20220102233159650

    2.3.7多生产者-多消费者

    本节内容

    问题分析

    image-20220103144751579

    image-20220103150006168

    如果不设置互斥信号量

    1

    image-20220103150133951

    image-20220103150231128

    总结

    image-20220103150332627

    image-20220103150550540

    2.3.8吸烟者问题

    本节内容

    问题描述

    image-20220103151905225

    问题分析

    image-20220103152153623

    image-20220103152605447

    总结

    image-20220103152712779

    2.3.9读者-写者问题

    本节内容

    问题描述

    image-20220103153041325

    问题分析

    image-20220103153253471
    如何实现

    image-20220103154307936

    总结

    image-20220103154511202

    2.3.10哲学家进餐问题

    本节内容

    问题描述

    image-20220103163018464

    问题分析

    image-20220103163417420

    如何实现

    三种方案

    image-20220103163547928

    ③仅当一个哲学家左右两只筷子都可用时才允许他抓起筷子

    image-20220103164419154

    总结

    image-20220103164626807

    2.3.11 管程

    思维导图

    image-20220103170239967

    本节内容

    为什么引入管程?

    解决信号量机制编程麻烦、易出错的问题。

    image-20220103164958854

    管程的定义和基本特征

    image-20220103165319046

    扩展

    image-20220103165904639

    image-20220103170104443

    扩展

    image-20220103170158888

    2.4.1死锁的概念

    思维导图

    image-20220103173050459

    本节内容

    什么是死锁?

    在并发环境下,各进程相互等待对方手里的资源,导致各进程都阻塞,无法向前推进。

    eg:

    image-20220103171112848

    image-20220103171220877

    死锁、饥饿、死循环的区别

    死锁:在并发环境下,各进程相互等待对方手里的资源,导致各进程都阻塞,无法向前推进。

    饥饿:由于长期得不到想要的资源,某进程无法向前推进的现象。比如:在短进程优先(SPF)算法中,若有源源不断地短进程到来,则长进程将一直得不到处理机,从而发生长进程"饥饿"。

    死循环:某进程执行过程中一直调不出某个循环的现象。有时是因为核程序逻辑bug导致的,有时是程序员故意设计的。

    image-20220103171548191

    死锁产生的必要条件

    image-20220103172326187

    什么时候会发生死锁

    image-20220103172712372

    死锁的处理策略

    1. 预防死锁。破坏死锁产生的四个必要条件中的一个或几个。
    2. 避免死锁。用某种方法防止系统进入不安全状态,从而避免死锁(银行家算法)。
    3. 死锁的检测和解除。允许死锁的发生,不过操作系统会负责检测出死锁的发生,然后采取某种措施解除死锁。

    2.4.2死锁的处理策略-预防死锁

    思维导图

    image-20220103194143119

    本节内容

    破坏互斥条件

    image-20220103193314254

    破坏不剥夺条件

    image-20220103193632923

    破坏请求和保持条件

    image-20220103193835321

    破坏循环等待条件

    image-20220103194110937

    2.4.3死锁的处理策略-避免死锁

    思维导图

    image-20220103200520123

    本节内容

    什么是安全序列

    image-20220103194557394

    image-20220103194746245

    img-2OgEFAEU-1642475211537

    image-20220103195324268

    银行家算法

    img-h9LGCGLw-1642475198110

    在这里插入图片描述

    实际做题

    image-20220103195916341

    代码实现银行家算法

    image-20220103200447579

    总结

    image-20220103200723714

    2.4.4死锁的处理策略-检测和解除

    思维导图

    image-20220103200804846

    本节内容

    死锁的检测在这里插入图片描述

    image-20220103202056221

    image-20220103202155669

    死锁解除

    image-20220103202749948

    第三章 内存管理

    3.1.1内存地基础知识

    思维导图

    一般作为选择题考察

    本节内容

    什么是内存?有何作用?

    内存是用于存放数据的硬件,程序执行前需要先放到内存中才能被CPU处理

    image-20220104152342391

    补充知识:几个常用的数量单位

    image-20220104152659183

    进程的运行原理—指令

    image-20220104153129406

    逻辑地址vs物理地址

    image-20220104153501923

    从写程序到程序运行

    179
    装入模块装入内存

    image-20220104154118186

    装入的三种方式—绝对装入

    image-20220104154332087

    装入的三种方式—静态重定位

    image-20220104154608474

    装入的三种方式—动态重定位

    image-20220104154943743

    image-20220104154917289

    链接的三种方式

    1. 静态链接:在程序运行之前,先将各目标模块及它们所需的库函数连接成一个完整的可执行文件(装入模块),之后不再拆开。
    2. 装入时动态链接:将各目标模块装入内存时,边装入边链接的链接方式。
    3. 运行时动态链接:在程序执行中需要该目标模块时,才对它进行链接。其优点是便于修改和更新,便于实现对目标模块的共享。
      image-20220104155412857

    3.1.2内存管理的概念

    思维导图

    本节不是重点,主要形成大体框架

    image-20220104170259984

    本节内容

    操作系统要管理什么?

    1. 内存空间的分配和回收

    image-20220104165245753

    1. 内存空间的扩充

    image-20220104165411777

    1. 地址转换

    image-20220104165605453

    1. 储存保护

    image-20220104165725770image-20220104165822329

    3.1.3覆盖与交换

    思维导图

    主要在选择题考察,理解两种技术的思想

    image-20220104174419318

    本节内容

    覆盖技术

    image-20220104172954402

    eg:

    image-20220104173236682

    交换技术

    image-20220104173450146

    image-20220104173530376

    image-20220104174138295

    3.1.4连续分配管理方式

    思维导图

    image-20220104211601226

    本节内容

    连续分配:指为用户进程分配的必须是一个连续的内存空间。

    单一连续分配

    image-20220104203445175

    固定分区分配

    image-20220104203833902

    操作系统需要建立一个数据结构—分区说明表,来实现各分区的分配与回收。每个表项对应一个分区。

    image-20220104204107590

    动态分区分配

    动态分区又称为可变分区分配,这种分配方式不会预先划分内存分区,而是在进程装入内存时,根据进程的大小动态地建立分区,并使分区地大小正好适合进程地需要。因此系统分区的大小和数目是可变。

    操作系统用什么样的数据结构记录内存的使用情况:空闲分区表、空闲分区链

    image-20220104205226240

    当很多个空闲分区都能满足需求时,应选择哪个分区进行分配?

    image-20220104205419325

    如何进行分区的分配与回收操作

    首次适应算法,分配

    image-20220104205541654

    最佳适应算法,分配

    image-20220104205656597

    回收,两个相邻的空闲分区合并为一个

    image-20220104210011358

    image-20220104210131021

    image-20220104210213813

    image-20220104210328633

    内部碎片和外部碎片的定义

    动画讲解20:00-23:00

    王道计算机考研 操作系统

    image-20220104211044670

    3.1.5动态分区分配算法

    思维导图

    image-20220104213752737

    本节内容

    这节PPT动画效果更好

    首次适应算法

    ==算法思想:==每次都从低地址开始查找,找到第一个能满足大小的空闲分区。

    如何实现:空闲分区以地址递增的次序排列。每次分配内存顺序查找空闲分区链(或空闲分区表)找到大小能满足要求的第一个空闲分区。

    image-20220104220948694

    最佳适应算法

    算法思想:由于动态分区分配是一种连续分配方式,为各进程分配的空间必须是连续的一整片区域。因此为了保证当”大进程“到来时能有连续的大片空间,可以尽可能多的留下大片的空闲区,即,优先使用更小的空闲区。

    如何实现:空闲分区按容量递增次序链接。每次分配内存时顺序查找空闲分区链(或空闲分区表),找到大小满足要求的第一个空闲分区。

    image-20220104221358823

    最坏适应算法

    ==算法思想:==为了解决最佳适应算法的问题—即留下太多难以利用的小碎片,可以在每次分配时优先使用最大的连续空闲分区,这样分配后剩余的空闲分区就不会太小,更方便使用。

    如何实现:空闲分区按容量递减次序链接。每次分配内存时按顺序查找空闲分区链(或空闲分区表),找到大小满足要求的第一个空闲分区。

    image-20220104221710109

    邻近适应算法

    算法思想:首次适应算法每次都从链头开始查找,这可能会导致低地址部分出现很多小的空闲分区,而每次分配查找时,都要经过这些分区,因此也增加了查找的开销。如果每次查找都从上一次查找结束的位置开始检索,就能解决上述问题。

    如何实现:空闲分区以地址递增的顺序排列(可以排列成一个循环链表)。每次分配内存时从上次查找结束的位置开始查找空闲分区链(或空闲分区表),找到大小能满足要求的第一个空闲分区。

    image-20220104222340203

    总结

    image-20220104213712337

    3.1.6基本分页存储管理的基本概念

    思维导图

    在这里插入图片描述

    本节内容

    连续分配方式的缺点

    image-20220104223445377

    连续分配:为用户进程分配的必须是一个连续的内存空间。
    非连续分配:为用户进程分配的可以是一些分散的内存空间
    这节主要讲基本分页存储管理

    image-20220104223826932

    把”固定分区分配“改造为”非连续分配版本“
    image-20220104224353689

    分页存储管理的基本概念

    image-20220104224616802

    如何实现地址的转换?使用动态重定位

    image-20220104224853228

    image-20220104225505336

    eg:

    image-20220104225505336

    为了方便计算页号、页面偏移量,页面大小一般设为2的整数幂。
    image-20220104230855668

    image-20220104231219228

    逻辑地址结构

    image-20220104231530357

    页表

    为了能够知道进程的每个页面在内存中存放的位置,操作系统要为每个进程建立一张页表

    image-20220104232034639

    image-20220104233124121

    3.1.7基本地址变换机构

    思维导图

    既有选择题又有大题

    image-20220105143304963

    本节内容

    基本地址变换机构

    image-20220105141524307

    image-20220105141953592

    eg:

    image-20220105142503866

    扩展

    image-20220105142818348

    3.1.8具有快表的地址变换机构

    思维导图

    image-20220105145735359

    本节内容

    局部性原理

    image-20220105144609506

    快表:最近使用过的页表会放入快表。

    image-20220105144850200

    引入快表后,地址的变换过程
    image-20220105145630340

    总结

    image-20220105145723240

    3.1.9两级页表

    思维导图

    image-20220105164655479

    本节内容

    单极页表存在的问题,问题一

    image-20220105161254576

    image-20220105161637214

    两级页表的原理、地址结构

    image-20220105162114285

    image-20220105162356272

    如何实现地址变换

    image-20220105162804576

    单极页表存在的问题,问题二,使用置换算法
    image-20220105162934609

    细节

    image-20220105163804385

    3.1.10基本分段存储管理方式

    思维导图

    image-20220105173111145

    本节内容

    分段

    进程的地址空间:按照程序自身的逻辑关系划分为若干个段,每个段都有一个段名(在低级语言中,程序员使用段名来编程),每段从0开始编址

    image-20220105165709937

    image-20220105170011518

    段表

    image-20220105170449849

    地址变换

    image-20220105170944221

    image-20220105171457179

    分段、分页管理的对比

    image-20220105171841200

    image-20220105172118859

    image-20220105172317423

    image-20220105172420458

    3.1.11段页式管理方式

    思维导图

    在这里插入图片描述

    本节内容

    分页、分段的优缺点

    image-20220105173844164

    段页式管理

    image-20220105174010443

    段页式管理的逻辑地址结构

    image-20220105174153408

    段表和页表: 一个进程对应一个段表,但一个进程可能对应多个页表

    image-20220105174724077

    image-20220105175151576

    3.2.1虚拟内存的基本概念

    思维导图

    在这里插入图片描述

    本节内容

    传统存储管理方式的特征、缺点

    image-20220105203032782

    局部性原理

    image-20220105204846125

    虚拟内存的定义和特征

    image-20220105205519497

    如何实现虚拟内存技术

    img 123

    3.2.2请求分页管理方式

    思维导图

    多理解

    image-20220105231922751

    本节内容

    前言

    在这里插入图片描述

    页表机制

    img-GPy1MehB-1642470535531

    缺页中断机构

    img-uGp00L4f-1642470535531

    动画4:40—7:00

    王道计算机考研 操作系统

    缺页中断是因为当前执行的指令想要访问的目标页面未调入内存而产生的,因此属于内中断

    image-20220105230031423

    地址变换机构

    image-20220105230155994

    image-20220105230613632

    img-s9dedOPS-1642473570726

    3.2.3页面置换算法

    思维导图

    image-20220105232445066

    本节内容

    最佳置换算法

    image-20220105232955298

    最佳置换算法可以保证最低的缺页率,但实际上,只有在进程执行的过程中才能知道接下来会访问到的是哪个页面,操作系统无法提前预判页面的访问序列。因此,最佳置换算法是无法实现的

    先进先出置换算法

    image-20220105233313217

    img-CLA5thhq-1642473539710

    最近最久未使用置换算法

    image-20220105233625784

    时钟置换算法

    image-20220105233625784

    改进型的时钟置换算法

    image-20220105235118717

    总结

    img-1A3lT49W-1642473515955

    3.2.4页面分配策略

    思维导图

    image-20220106131930024

    本节内容

    页面分配、置换策略

    image-20220106125808157

    image-20220106130052241

    何时调入页面

    image-20220106130317182

    从何处调入页面

    image-20220106130548948

    抖动(颠簸)现象

    image-20220106130648973

    工作集

    image-20220106130828588

    第四章 文件管理

    4.1.1初识文件管理

    思维导图

    img-q1Tg6toK-1642473413886

    本节内容

    文件的属性

    文件名:由创建文件的用户决定文件名,主要是为了方便用户找到文件,同一目录下不允许有重复文件

    标识符:一个系统内的各文件标识符唯一,对用户来说毫无可读性,因此标识符只是操作系统用于区分各个文件的一种内部名称。

    类型:指明文件的类型(bat.txt)。

    位置:文件存放的路径(让用户使用)、对外存中的地址(操作系统使用、对用户不可见)。

    创建时间、上次修改时间、文件所有者信息

    保护信息:对文件进行保护的访问控制。

    image-20220106133811259

    文件内部的数据应该怎样组织起来

    image-20220106134009984

    image-20220106133928490

    操作系统应该向上提供哪些功能

    img-RlUULks6-1642473375665

    img-m2744ypE-1642473375666

    从上往下看,文件应该如何存放在外存
    image-20220106134718038

    其他需要由操作系统实现的文件管理功能

    image-20220106134851150

    4.1.2文件的逻辑结构

    思维导图

    image-20220106142858202

    本节内容

    无结构文件

    image-20220106135621400

    无结构文件没有明显的结构特性,所以重点学习有结构文件

    有结构文件

    由一组相似的记录组成,又称“记录式文件”。每条记录由若干个数据项组成。如:数据库表文件。一般来说,每条记录有一个数据可作为关键字

    image-20220106140413805

    image-20220106140322592

    顺序文件

    image-20220106140537761

    image-20220106140555750

    image-20220106141221368

    索引文件

    image-20220106141509816

    索引顺序文件

    image-20220106141746682

    image-20220106141849880

    多级索引顺序文件

    image-20220106141958670

    4.1.3文件目录

    思维导图

    在这里插入图片描述

    本节内容

    文件控制块

    image-20220106143748996

    image-20220106143848650

    需要对目录进行的操作

    image-20220106144112463

    目录结构—单级目录结构

    image-20220106144520367

    目录结构—两级目录结构

    image-20220106144608042

    目录结构—多级目录结构

    image-20220106144800156

    image-20220106145015007

    目录结构—无环图目录结构

    image-20220106145149302

    索引结点(FCB改进)

    img-1RtB5VYQ-1642473146130

    img-n6TZbryz-1642473146131

    4.1.4文件的物理结构(上)

    本节内容

    文件块、磁盘块

    image-20220106164042616

    文件分配方式—连续分配

    image-20220106164552142

    优点

    image-20220106164704163

    缺点

    image-20220106164733059

    image-20220106164759757

    img-EGhK3hkn-1642473119763

    文件分配方式—链接分配,隐式链接

    image-20220106164940912

    image-20220106165018455

    image-20220106165027356

    文件分配方式—链接分配 显式链接

    image-20220106165211125

    image-20220106165334035

    image-20220106165345689

    4.1.4文件的物理结构(下)

    思维导图

    image-20220106172209822

    本节内容

    文件分配方式—索引分配

    image-20220106165818695

    image-20220106170205503

    image-20220106170302552

    image-20220106170915061

    image-20220106171136289

    image-20220106171426624

    总结

    image-20220106171631813

    4.1.5文件存储空间管理

    思维导图

    在这里插入图片描述

    本节内容

    存储空间的规划与初始化

    image-20220115164845098

    存储空间的管理—空闲表法

    image-20220115165140486

    存储空间管理—空闲链表法

    操作系统保存着链头、链尾指针

    离散分配、连续分配都适用。为一个文件分配多个盘块时效率更高!

    image-20220115165430793

    存储空间管理—位示图法

    位示图:每个二进制位对应一个盘块。

    eg:(字号,位号)={i,j}的二进制位对应的盘块号 b=ni+j
    b号盘块对应的字号i=b/n,位号j=b%n

    image-20220115170033374

    image-20220115170125204

    存储空间管理—成组链接法

    image-20220115170219252

    image-20220115170334644

    回收过程动画22:00-27:00

    王道计算机考研 操作系统

    4.1.6文件的基本操作

    思维导图

    image-20220115173554076

    本节内容

    创建文件

    image-20220115172216759

    删除文件

    image-20220115172256633

    打开文件

    image-20220115172407257

    关闭文件

    image-20220115172639745

    读文件

    image-20220115172733042

    写文件
    image-20220115172816538

    4.1.7文件共享

    思维导图

    image-20220115174230887

    本节内容

    注意复制与共享的区别

    多个用户共享一个文件,意味着系统中只有"一份"文件数据。并且只要某个用户修改了该文件的数据,其他用户也可以看到文件数据的变化。
    如果是多个用户都"复制"了同一个文件,那么系统中会有"好几份"文件数据。其中一个用户修改了自己的那份文件数据,对其他用户的文件数据并没有影响。

    基于索引结点的共享方式(硬链接)

    image-20220115174659354

    基于符号链的共享方式(软链接)

    image-20220115174758633

    eg:快捷方式6:00-9:00

    王道计算机考研 操作系统

    4.1.8文件保护

    思维导图

    image-20220115180249178

    本节内容

    口令保护

    image-20220115175238105

    加密保护

    image-20220115175408823

    访问控制

    image-20220115175629133

    精简的访问控制表

    image-20220115175654094

    4.1.9文件系统的层次结构

    本节内容

    文件系统的层次结构

    image-20220115180645397

    重要考点

    mg-1UdtxCkC-1642472437365

    4.2.1磁盘的结构

    思维导图

    在这里插入图片描述

    本节内容

    磁盘、磁道、扇区

    img-igZWfmPD-1642473911520

    如何在磁盘中读/写数据

    image-20220115181111061

    盘面、柱面

    image-20220115181409239

    磁盘的分类

    image-20220115181442735

    4.2.2磁盘调度算法

    思维导图

    image-20220115200644298

    本节内容

    image-20220106173442859

    先来先服务

    img-YeutUOte-1642472561581

    最短寻找时间优先

    image-20220106174820093

    扫描算法

    image-20220106175440240

    LOOK调度算法
    img-TbkJZTd0-164247233179

    循环扫描算法

    image-20220106175719297

    C-LOOK调度算法

    image-20220106175810095

    4.2.3减少磁盘延迟时间的方法

    思维导图

    image-20220115203508550

    本节内容

    image-20220115202238412

    减少延迟时间的方法:交替编号

    image-20220115202342883

    磁盘地址结构的设计

    image-20220115202456023

    image-20220115202546385

    image-20220115202605597

    减少延迟时间的方法:错位命名

    动画9:00-14:00

    image-20220115202739407

    image-20220115203107822

    王道计算机考研 操作系统

    4.2.4磁盘的管理

    思维导图

    image-20220115204532906

    本节内容

    磁盘初始化

    image-20220115203818234

    引导块

    image-20220115204023763

    坏块的管理

    image-20220115204137275

    第五章 输入/输出(I/O)管理

    5.1.1 I-O设备的概念和分类

    思维导图

    image-20220115205316940

    本节内容

    什么是I/O设备

    image-20220115204901747

    I/O设备的分类—按使用特性

    image-20220115204931146

    I/O设备的分类—按传输速率分类

    image-20220115205003404

    I/O设备的分类—按信息交换的单位分类

    image-20220115205032644

    5.1.2 I-O控制器

    思维导图

    考的频率不高,需要注意编址方式的区别

    image-20220115210653383

    本节内容

    I/O设备的机械部件

    image-20220115205507685

    I/O设备的电子部件(I/O控制器)

    image-20220115205652880

    I/O控制器的组成

    image-20220115205927045

    寄存器独立编址

    image-20220115205949064

    内存映像I/O v.s. 寄存器独立编址

    image-20220115210211381

    5.1.3 I-O控制方式

    思维导图

    img-IKFh3ZxN-1642471980650

    image-20220115213514912

    本节内容

    程序直接控制方式

    image-20220115212233262

    轮询

    image-20220115212421180

    image-20220115212519090

    中断驱动方式

    image-20220115212651656

    image-20220115212741133
    DMA方式

    image-20220115212908922

    image-20220115213056498

    image-20220115213230631

    通道控制的方式

    通道:一种硬件,可以理解为是“弱鸡版的CPU”。通道可以识别并执行一系列通道指令

    image-20220115213358749

    image-20220115213449429

    5.1.4 I-O软件层次结构

    知识点与重要考点

    最常考的是I/O层次的顺序?处理顺序?

    image-20220115215202805

    本节内容

    知识总览

    image-20220115213810076

    用户层软件

    image-20220115213911026

    设备独立性软件

    设备独立性软件,又称设备无关系软件。与设备的硬件特性无关的功能几乎都在这一层实现。

    主要实现的功能:

    1. 向上层提供统一的调用接口(如read/write 系统调用)
    2. 设备的保护(原理类似于文件保护。设备被看作是一种特殊的文件,不同用户对各个文件的访问权限是不一样的,同理,对设备的访问权限也不一样)。
    3. 差错处理
    4. 设备的分配与回收
    5. 数据缓冲区管理
    6. 建立逻辑设备名到物理设备名的映射关系;根据设备类型选择调用相应的驱动程序。

    image-20220115214438501

    image-20220115214457824

    思考:为何不同的设备需要不同的设备驱动程序?

    image-20220115214919313

    设备驱动程序

    image-20220115215008982

    中断处理程序

    image-20220115215118799

    5.1.5 I-O核心子系统

    本节内容

    知识总览

    image-20220115215437274

    这些功能要在哪个层次实现?

    image-20220115215650886

    I/O调度
    image-20220115215603715

    设备保护

    image-20220115215630973

    5.1.6 I-O假脱机技术

    思维导图

    image-20220115220216520

    本节内容

    什么是脱机技术

    image-20220115220306482

    image-20220115220420466

    假脱机技术—输入井和输出井

    image-20220115220505230

    假脱机技术—输入进程和输出进程

    image-20220115220543700

    假脱机技术—输入/输出缓冲区

    image-20220115220634944

    共享打印机原理分析

    image-20220115220744752

    动画9:00-10:00

    王道计算机考研 操作系统

    image-20220115220850765

    5.1.7 I-O 设别的分配和回收

    思维导图

    img-eLtTAFta-1642470535615

    本节内容

    设备分配时应考虑的因素

    image-20220115223309844

    image-20220115223459566

    设备分配管理中的数据结构

    img-mng3zxQ3-1642471701634

    image-20220115223736327

    image-20220115223822951

    image-20220115223855487

    image-20220115223942206

    设备分配的步骤

    image-20220115224205942

    image-20220115224223298

    设备分配步骤的改进

    img-smatSWb4-1642470535619

    img-6V3sr4tM-1642471636172

    5.1.8 I-O 缓冲区管理

    思维导图

    img-pSbd971V-1642470535620

    本节内容

    什么是缓冲区?有什么作用?

    img-j3MRfnWC-1642470535620

    有什么作用?

    img-Z0g9KqKi-1642470535621

    单缓冲

    img-pcyJV6Pt-1642470535621

    img-ZCUwFSZK-1642470535621

    img-FNqA4Y1J-1642470535622

    双缓冲

    img-jJbzmYd8-1642470535622

    img-XoB1ZjXf-1642470535623

    img-RkWBkns2-1642470535623

    使用单/双缓冲在通信时的区别

    img-kD6haK22-1642470535623

    img-ytbcZuis-1642470535624

    循环缓冲区

    img-oISjkkw3-1642470535625

    缓冲池

    img-pF4pakDA-1642470535625

    展开全文
  • - 2013年,python3.0 # 编程语言: C,Java,C++, C#, shell, ruby, php, JavaScript, Matlab - 面向对象语言 - 面向过程语言 - 面向函数编程 - 编译型语言:Windows用C写了一个QQ软件,并不能在Linux上执行,也不能...

    wKiom1me--ax8v2-AAFdNODID6c914.png

    python的发展史

    - 1989年,Guido(龟叔),为ABC语言写插件,Monty Python喜剧团;

    - 1990年,发布python第一个版本;

    - 2001年,2.x; ????(python2.7 ?----> python2.8<不会存在>);

    - 2013年,python3.0

    # 编程语言:

    C,Java,C++, C#, shell, ruby, php, JavaScript, Matlab

    - 面向对象语言

    - 面向过程语言

    - 面向函数编程

    - 编译型语言:Windows用C写了一个QQ软件,并不能在Linux上执行,也不能在IOS上运行;

    - 解释型语言:可以跨平台,你用python写一个APP,只需要写一份,在所有的平台上可以运行;

    # python的优缺点

    ## 优点:

    - 创始人说的: 简单,优雅,明确

    ## 缺点:

    - 速度慢

    ```

    爬虫:

    http://www.baidu.com/xxx.html

    wget xxx.html

    分析

    python??C

    1h+10ms??1h+1ms

    ```

    # ipython的安装

    ## 第一个python脚本

    ## 解释器问题

    ```

    # 可移植性的对比,如果你的代码移植到的机器,python并未安装在/usr/bin/python这里,就使用第二种;

    #!/usr/bin/python

    #!/usr/bin/env python

    ```

    ## 中文问题

    ```

    #coding:utf-8

    #coding=utf-8

    #encoding:utf-8

    #encoding=utf-8

    #encoding:-*- utf-8 -*-

    ```

    编码格式:

    ASCII:美国人发明了计算机,1个字节(8位)去存储一个英文字符,2^8=256;

    Unicode:2个字节(16位)去存储一个字符,2^16,65536;

    # GB2312:

    utf-8:在编程过程中,英文多,中文少。如果是英文字符,就用一个字节去存储;如果是中文用3个字节去存储;

    # python的IDE工具

    - sublime

    - eclipse

    - pycharm

    ## 快捷键和技巧

    - ctrl+alt+s:设置

    - alt+insert:新建(文件,目录,包)

    - ctrl + s:保存

    - Delete:删除(文件,目录,包)

    - ctrl + /: 快速注释(或取消)一行或多行

    - shift+alt+N:

    - ctrl+d: 快速复制一行

    - shift+delete:快速删除一行

    本文转自 lulu2017 51CTO博客,原文链接:http://blog.51cto.com/13132425/1959186

    展开全文
  • javascript变量 javascript数据类型 javascript运算符 javascript流程语句 javascript数组 javascript字符串函数 ...javascript windows对象 javascript正则表达式 转载...
  • 学习笔记–操作系统将学习操作系统时归纳的一些东西整理出来Mark一下,方便以后回忆和整理 概括对于CS和软工的同学来说。操作系统的重要性就不需要再多说了吧,相当于入门级别的科目了先看一张大概内容的图: ...
  • linux系统的基本知识文件及思维:普通文件(-) 目录文件(d) 链接文件(l)普通文件: 创建:touch 编辑:vim/vi 命令模式:光标的跳转(gg,G,^,$,w,b),内容的复制粘贴(yy,p)、删除(dd,dgg,dG ) 编辑模式:从...
  • 思维导图 - Python自动化体系基础:Python+selenium自动化、Docker容器下运行自动化、Python操作excel、Python操作oracle数据库 ① Python+selenium 自动化-基本环境搭建,调用 selenium 库访问百度查询天气实例演示...
  • 第二章 Google云计算 第三章 Amazon云计算 第四章 Windows Azure 第七章 虚拟化技术 的知识点思维导图
  • 思维导图在中职《计算机应用基础》教学中应用思维导图在中职《计算机应用基础》教学中应用摘 要:本文阐述了思维导图的涵义及特点,并结合中职《计算机应用基础》教学的现状,探讨了思维导图在《计算机应用基础》...
  • 画操作系统思维导图,是学校布置的作业,感觉还蛮好的,现在也学会了如何做操作系统思维导图。 操作系统思维导图第一章 操作系统引论第二章 进程与线程第三章 死锁第四章 调度第五章 存储管理第六章 文件系统第七章 ...
  • 操作系统引论的思维导图,有需要可以看看噢
  • 思维导图是用于以分层方式直观地组织信息的图,这些图显示了组成该图的元素之间的关系。事实证明,绘制思维导图对于将信息输入大脑和从大脑传出信息非常有效,特别是与逻辑笔记结合使用时,这种逻辑笔记通常会详细...
  • 感谢大家在忙工作、看奥运的闲暇之余,开了今天的推送,查看我们的上线更新,让我们倍感荣幸。 我将用不太简短的语言,为大家简单地介绍一下它们,请看下去吧~ Axure导入 Axure 可以说是产品原型设计领域的OG,...
  • Linux的常用命令思维导图

    千次阅读 2021-04-06 13:34:34
    # 备注: 软链接文件:就像Windows中快捷方式一样,只是源文件的一个指向,删除软连接文件,源文件任存在。 硬链接文件:比如当前目录下有2个文件,这2个文件除了名字不一样其他的一模一样,但是占用的实际磁盘空间...
  • 思维导图是一种学习方法,它可以将学习者的思维和抽象的思想以具体的视觉形象化。具体来说,思维导图可以帮助学习者有效地组织他们的想法和信息。 此外,学习者可以更容易地将他们的信息碎片连接起来,这可以提高...
  • 计算机二级MS office 复习思维导图

    千次阅读 2021-09-10 13:44:14
    计算机二级MS Office考试分为选择题(20分)和操作题(80分),其中选择题包括公共基础知识(10分)和计算机基础知识(10分);操作题包括Word操作(30分)、Excel操作(30分)和PowerPoint操作
  • 思维导图: 复习知识点总结:常用基本命令 1 帮助命令 1.1 man 获得帮助信息 1)基本语法 man [命令或配置文件] (功能描述:获得帮助信息) 2)显示说明 表1-6 信息 功能 ...
  • 经过了一段时间事件学习,我又重新对事件进行了总结,废话不多说,直接上思维导图不想看思维导图的可以看下方内容,也是思维导图上的全部内容
  • 计算机操作系统-内存管理总结
  • 思维导图在日常工作中有着非常重要的作用,它可以帮助我们列待办计划、理清思路、发散思维、记录笔记等。市面上有很多的思维导图工具(Xmind、MindMaster、MindManager、百度脑图),这些工具我都使用过,各有优势,...
  • 思维导图

    千次阅读 2019-05-17 16:00:24
    思维导图又叫心智导图,是表达发散性思维的有效图形思维工具 ,它简单却又很有效,是一种实用性的思维工具。 思维导图充分运用左右脑的机能,利用记忆、阅读、思维的规律,协助人们在科学与艺术、逻辑与想象之间...
  • linux基础学习思维导图及文档(17万字)

    千次阅读 多人点赞 2022-01-02 19:43:54
    远程工具3.nmcli配置ip六.linux使用注意事项1.Linux 严格区分大小写2.Linux 一切皆文件3.Linux 不靠扩展名区分文件类型4.Linux 中所有的存储设备都必须在挂载之后才能使用5.Windows 下的程序不能直接在 Linux 中使用...
  • 一、怎样从”需求“转变为...这个时候,就需要你根据对需求的理解,并结合软件开发的知识来设计软件的功能。 具体怎样设计呢?总不能仅仅在脑子里想一想吧。因此,你需要把每个需求对应的软件设计写下来。一般是用...
  • 目前我在应用学习过程中,在学习一个新的知识或者领域的时候,往往会存在知识点相互关联。但是现在的分类大部分都是树形图表示,或者是windows文件夹,这种一层一层的结构,只有点进去才知道里面是什么。 或者 ...
  • 学习工具、网站、方法 分享代码的平台:GitHub、码云(每个大的项目) ... 思维导图:总结归纳知识点 (xmind) makedown: typora 文本编辑器:VS code 视频播放器:potplayer(倍速) 开发环境: vir...
  • 思维导图学习总结

    万次阅读 2017-03-22 13:42:26
    思维导图 思维导图又叫心智导图是表达发散性思维的有效的图形思维工具 ,它简单却又极其有效,是一种 革命性的思维工具。思维导图运用图文并重的技巧,把各级主题的关系用相互隶属与相关的层级图 表现出来,把...
  • 2)但是这样太麻烦了,于是有些人就把一些常用的软件提前编译好做成软件包(可以理解成Windows上的`.exe`安装程序)放在一个服务器上,通过包管理器我们就可以很方便的获取到这个编译好的软件包,从而直接进行软件的...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,544
精华内容 1,017
热门标签
关键字:

windows知识点思维导图