OS笔记——chapter1_Introduction

操作系统原理及安全

第一章 概论

“原理 机制 算法”

1.1 操作系统的概念

计算机系统由软件和硬件组成。
操作系统是配置在计算机硬件上的第一层软件,是对硬件的首次扩充。
它位于硬件与其他软件之间,是所有其他软件运行的基础。

In short:操作系统是管理计算机硬件的程序。操作系统并没有公认且统一的精确定义


1.2 三个重要概念

  • 资源复用

    • 共享地使用资源,解决资源不足的问题
    • 可以分为:
      1.时间复用:多个用户或程序轮流地使用某个资源,如CPU使用
      2.空间复用:多个用户或程序同时使用资源的一部分,不需排队,如内存使用
  • 资源虚化

    • 让一个物理设备变成多个相对独立的对应物,也称虚拟性。这为资源复用提供里技术支持
  • 资源抽象

    • 化繁为简:把具体的资源管理变为较统一、简单的管理方式
    • 对内封装细节,对外提供管理对象和访问接口
    • 解决资源复杂的问题
    • e.g.
      1.进程抽象
      2.虚存抽象
      3.文件抽象

1.3 操作系统的类型

  • 最基础的操作系统类型:

1.批处理操作系统:

  • 批处理技术:计算机系统对一批作业自动进行处理的一种技术。
  • 单处理机系统中多道程序运行的特点:
    1.多道:内存中同时存放多道相互独立的程序
    2.宏观上并行
    3.微观上串行
    4.提高了效率(单位时间的计算量up)但对每个程序来说,却延长了计算时间。系统资源利用率、吞吐率的提高是以用户的响应时间为代价的。

2.分时操作系统

  • 分时技术:把处理器的运行时间分成很短的时间片,按时间片轮流把处理器分配给各联机作业使用。(像一个循环队列)

3.实时操作系统

  • 实时系统:指系统能及时响应外部事件的请求,在规定的时间内完成处理并控制时实任务协调一致地运行。(及时可靠)

1.4 操作系统的基本特征

操作系统的4个基本特征:并发性、共享性、虚拟性、异步性(或不确定性)。

  • 1.并发(Concurrency)性:多个事件在同一时间间隔内发生
    注意:并行性是指同一时刻内~。
  • 2.共享性:系统中的资源可供多个并发执行的进程共同使用。
  • 3.虚拟性:把物理上的实体变成逻辑上的对应物。
  • 4.异步性:表现为多个作业的执行过程是走走停停的,其执行顺序和每个作业的执行时间是不确定的。

1.5 操作系统的作用和功能

  • 作用:

    1.OS作为用户与计算机硬件之间的接口。

    操作系统改造和扩充过的计算机不但功能更强,使用也更为方便。用户可以直接调用系统提供的各种功能,而无需了解软硬件本身的细节,为用户提供了一个与底层细节无关可管理的运行环境,对于用户来讲OS便成为他与计算机硬件的一个接口。

    2.OS作为计算机系统的资源管理者。

    3.OS作为虚拟计算机。

    操作系统是紧靠硬件的第一层软件。计算机上覆盖操作系统后,可扩展基本功能,为用户提供一台功能显著增强、使用更加方便、安全可靠性更好、效率明显提高的机器,称为虚拟计算机(Virtual Machine)

  • 主要功能:

    1.处理器管理 :主要任务是对处理器的分配和运行实施有效管理。
    2.存储器管理 :主要任务是方便用户使用存储器,提高存储器利用率,从逻辑上扩充内存。
    3.设备管理 :设备分配、缓冲管理、设备驱动、设备独立性。
    4.文件管理 :主要任务是对文件进行管理,方便用户使用并保证文件安全性。


1.6 操作系统提供的服务和接口

  • 服务:
    1.程序执行:把程序载入内存并运行。

    2.输入输出操作:系统统一管理设备,为用户程序的运行提供I/O服务。

    3.信息保存(文件管理系统):系统为用户提供文件读写等服务。

    4.通信服务:提供进程间的通信服务。

    5.错误检测及报告:能对用户程序运行过程中出现的错误进行检测并及时报告给用户。

    6.资源分配:为进程的运行分配资源,如CPU等。

    7.统计:统计用户使用资源的类型和数量。

    8.保护:对计算机中存储的信息进行保护,确保资源的访问是受控的。

  • 接口:
    OS向用户提供了三类接口:
    1.命令接口(操作接口):操作命令
    2.程序接口:

    程序接口由一组系统调用命令组成。用户通过使用这些系统调用命令来请求操作系统提供的服务。
    系统调用:由操作系统提供的一个或多个子程序模块实现的。可以分为设备管理、文件管理、进程控制、进程通信、内存管理。

系统调用执行过程

  • 为执行系统调用命令做准备:主要工作是保留线程,并把系统调用命令的参数放入指定存储单元。
  • 执行系统调用:根据系统调用命令的编号找到子程序的入口地址,然后转去执行。
  • 系统调用命令执行完成后的处理:主要工作是恢复现场,并把系统调用的返回参数送入指定存储单元。
  • 系统调用与过程调用的区别:

    1.运行状态不同:系统调用在核心态下运行,子程序在用户态下运行。

    2.进入方式不同:系统调用通过中断进入,以实现运行状态的改变;子程序直接调用不涉及运行状态的改变。

3.图形接口(图形式命令接口)GUI:鼠标、桌面、图标


1.7 操作系统的运行环境和内核结构

  • 操作系统的运行环境:
    计算机与硬件提供的支持,构成了现代操作系统的运行环境。包括:处理器、存储器、设备、时钟、中断。

  • 操作系统根据运行环境可分为:

    1.系统初启程序:由时钟中断、外设中断所驱动。

    2.服务程序:面向用户态,中断驱动。

    3.系统内部模块:核心态,中断驱动。

  • 操作系统的内核结构:

    • 内核是操作系统的构件,或称基本单位。

    • 内核作用:

      1.为进程提供管理:进程难于自己管理自己,同时也难于用硬件实现。

      2.需要一个软件对硬件处理器及相关资源进行首次改造,为进程执行提供良好的运行环境。

    • 内核的基本功能:

      1.中断处理:截获中断,转向中断处理例程。

      2.短程调度:CPU调度,保存和恢复现场。

      3.原语管理:原语是不可中断过程。

    • 内核的基本属性:

      1.内核是由中断驱动的。

      2.内核的执行是连续的。

      3.内核在屏蔽中断状态下执行。

      4.内核可以使用特权指令。

  • 四种主要的内核机构:

    1.模块结构:功能独立的模块,全局相联构成一个整体。

    2.层次结构:分类模块成几层。

    3.微内核结构:内核(消息传递)+以C/S方式活动的进
    程。

    4.虚拟机结构:Hypervisor、guestOS、HostOS;

    • 再细分为本地虚拟化(type1)与主机虚拟化(type2)。
      本地虚拟化与主机虚拟化

    • 全虚拟化与半虚拟化(有无添加专门的虚拟化辅助指令)
      全虚拟化与半虚拟化

  • 硬件虚拟化:为了提高虚拟化性能,硬件厂商内置了相应的指令集,是虚拟化技术更接近物理机的速度,但仍不足、仍有提高空间。
  • 操作系统设计的一个原则:

    机制(Mechanism)与策略(Policy)分离原则:

    • 机制——特定功能的函数
    • 策略——如何使用函数(与内核无关)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值