计算机操作系统

计算机操作系统

本部分主要是笔者在学习现代操作系统和一些相关面试题所做的笔记,如果出现错误,希望大家指出!

现代操作系统阅读笔记

第一章 引论

1. 操作系统定义

操作系统是运行在内核态的软件,它执行两个基本上独立的任务。

  • 隐藏计算机底层硬件的实现,为用户及应用程序提供一个资源集的清晰抽象。

  • 管理计算机硬件资源。

任何操作系统的核心是它可处理的系统调用集。这些系统带欧阳真实地说明了操作系统做的工作。

2. 计算机运行模式

多数计算机有两种运行模式:内核态和用户态。

软件中最基础的部分是操作系统,它运行在内核态。这内核态模式下,操作系统具有对所有硬件的完全访问权,可以执行机器能够运行的任何指令。软件的其余部分运行在用户态下,在用户态下,只能使用机器指令中的一个子集。

计算机运行模式

3. shell 与 GUI

用户与之交互的程序,基于文本的通常称为shell,而基于图标的则称为图形用户界面(GUI)。

它们并不是操作系统的一部分,它们是运行在用户态最低层次的用户接口程序

4. 对于抽象的理解

现代计算机系统中,大量使用了抽象这一概念。抽象是管理复杂性的一个关键。好的抽象可以把一个几乎不可能管理的任务划分为两个可管理的部分。其中第一部分是有关抽象的定义和实现,第二部分是随时用这些抽象解决问题。

以抽象的角度看操作系统,它的任务就是创建好的抽象,并实现和管理它所创建的抽象。

5. 多路复用资源方式

在时间上复用:当一种资源在时间上复用时,不同的程序或用户轮流使用它。

在空间上复用:每个客户得到资源的一部分。

6. I/O 设备的结构

I/O 设备一般包括两个部分:设备控制器和设备本身。控制器插在电路板上的一块芯片或一组芯片,这块电路板物理地控制芯片,它从操作系统接收命令。

控制器的任务是为操作系统提供一个简单的接口。每类设备控制器是不同的,所以需要不同的软件进行控制。专门与控制器对话,发出命令并接收响应的软件,称为设备驱动程序。为了使用设备驱动程序,必须要把设备驱动程序装入到操作系统中,这样它可在核心态中运行。

每个设备控制器都有少量的用于通信的寄存器,所有的寄存器的集合构成了I/O 空间。

7. IDE 概念

IDE 表示集成驱动电子设备,是许多计算机的磁盘标准。

8. 实现输入输出的三种方式

第一种方式,用户程序发出一个系统调用,内核将其翻译成一个对应设备驱动程序的过程调用。然后设备驱动程序启动 I/O 并在一个连续不断的循环中检查该设备,看该设备是否完成了工作。当 I/O 结束后,设备驱动程序把数据送到指定的地方(若有此需要),并返回。然后操作系统将控制返回给调用者。这种方式称为忙等待(busy waiting),其缺点是要占据CPU ,CPU 一直轮询设备直到对应的 I/O 操作完成。

第二种方式,设备驱动程序启动设备并且让该设备在操作完成时发出一个中断。设备驱动程序在这个时刻返回。操作系统接着在需要时阻塞调用者并安排其他工作进行。当设备驱动程序检测到该设备的操作完毕时,它发出一个中断通知操作完成。

终端实例

第三种方式,为I/O使用一种特殊的直接存储器访问(Direct Memory Access,DMA)芯片,它可以控制在内存和某些控制器之间的位流,而无须持续的CPU干预。

9. CMOS 存储器

CMOS 存储器是易失性的。许多计算机利用 CMOS 存储器保持当前时间和日期。 CMOS 存储器和递增时间的时钟电路有一块小电池驱动,所以,即使计算机没有上电,时间也可以正确地更新。

10. USB 概念

USB 是通用串行总线,是用来将所有的慢速 I/O 设备,诸如键盘和鼠标,与计算机相连。USB 是一种集中式总线,其根设备每 1ms 轮询一次 I/O 设备,看是否有消息收发。所有的 USB 设备共享一个 USB 设备驱动器,于是就不需要为新的 USB 设备安装新的设备驱动器了。

11. 即插即用概念

在一般的计算机工作环境下,操作系统必须了解有些什么外部设备连接到计算机上,并对它们进行配置。这种需求导致了 Intel 和微软设计了一种名为即插即用的 I/O 系统。

在即插即用之前,每块 I/O 卡有一个固定的中断请求级别和用于其 I/O 寄存器的固定地址。即插即用所做的工作是,系统自动地收集有关 I/O 设备的信息,集中赋予 I/O 地址,然后通知每块卡所用的数值。

12. 计算机的启动

Pentium 的简要启动过程如下。在每个 Pentium 上有一块母板。在母板上有一个称为基本输入输出系统(Basic Input Output System,BIOS)的程序。在 BIOS 内有底层 I/O 软件,包括读键盘、写屏幕、进行磁盘 I/O 以及其他过程。现在这个程序存放在一块闪速 RAM 中,它是非可易失性的,但是在发现 BIOS 中有错时可以通过操作系统对它进行更新。

简要过程如下:

  1. BIOS 开始运行。它首先检查计算机设备的状态信息是否正常。

  2. 扫描并记录总线所连设备。

  3. 依次搜索启动设备,导入操作系统。

  4. 操作系统询问 BIOS ,获得配置信息,获取所有设备的驱动程序并调入内核。

  5. 初始化有关表格,创建需要的任何背景进程,并在每个终端上启动登录程序或GUI。

13. 操作系统分类

大型机操作系统、服务器操作系统、多处理器操作系统、个人计算机操作系统、掌上计算机操作系统、嵌入式操作系统、传感器节点操作系统、实时操作系统、智能卡操作系统

14. 实时操作系统的基本概念

实时操作系统的特征是将时间作为关键参数。通常分为硬实时操作系统和软实时操作系统。

在硬实时操作系统中,某个规定的动作必须绝对地在规定的时刻(或规定的时间范围)发生。

在软实时操作系统中,偶尔违反最终时限是不希望的,但可以接受,并且不会引起任何实时性的损害。

15. UID

系统管理器授权每个进程使用一个给定的 UID 标识。每个被启动的进程都有一个启动该进程的用户 UID 。子进程与父进程拥有一样 UID。用户可以是某个组的成员,每个组也有一个 GID 标识。

16. 文件路径

在 UNIX 中,绝对路径名包含了从根目录到该文件的所有目录清单,它们之间用正斜线 / 隔开。最开始的正斜线标识这是从根目录开始的绝对路径。

在 MS-DOS 和 Windows 中,用反斜线 \ 作为分隔符。

17. 文件系统安装

UNIX 一个重要概念是安装文件系统。几乎所有的个人计算机都有一个或多个光盘驱动器,可以插入 CD-ROM 和 DV D。它们几乎都有 USB 接口,可以插入 USB 存储棒(实际是固态磁盘驱动器)。为了提供一个出色的方式处理可移动介质,UNIX 允许把在 CD-ROM 或 DVD 上的文件系统接入到主文件树上。 mount 系统调用允许把在 CD-ROM 上的文件系统连接到程序所希望的根文件系统上。

18. 特殊文件

提供特殊文件是为了使 I/O 设备看起来像文件一般。这样,就像使用系统调用读写文件一样,I/O 设备也可通过同样的系统调用进行读写。

有两类特殊文件:块特殊文件和字符特殊文件。

块特殊文件指那些由可随机存取的块组成的设备,如磁盘等。比如打开一个块特殊文件,然后读第4块,程序可以直接访问设备的第4块而不必考虑存放该文件的文件系统结构。

字符特殊文件用于打印机、调制解调器和其他接收或输出字符流的设备。按照惯例,特殊文件保存在 /dev 目录中。例如,/dev/lp是打印机。

19. 文件保护

UNIX 操作系统通过对每个文件赋予一个9位的二进制保护代码,对 UNIX 中的文件实现保护。该保护代码有三个3位字段,一个用于所有者,一个用于所有者同组(用户被系统管理员划分成组)中的其他成员&#

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

智者_若愚

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值