《操作系统原理》学习笔记:第1章 概述

前言:该系列文章为笔者学习清华大学《操作系统原理》相关课程笔记,参考书籍《操作系统概念》《现代操作系统等》。如果涉及相关书籍或课程版权,联系即删~

章节 博文
1 《操作系统原理》学习笔记:第1章 概述
2 《操作系统原理》学习笔记:第2章 操作系统基础操作
3 《操作系统原理》学习笔记:第3章 操作系统内存管理
4 《操作系统原理》学习笔记:第4章 非连续内存分配
5 《操作系统原理》学习笔记:第5章 虚拟内存
6 待续……

《操作系统原理》学习笔记:第1章 概述

      • 1.1 什么是操作系统
      • 1.2 Kernel操作系统内部组件
      • 1.3 OS Kernel的特征
      • 1.4 学习操作系统的挑战
      • 1.5 操作系统实例
      • 1.6 操作系统的历史与发展
      • 1.7 操作系统结构

1.1 什么是操作系统

  • 用户角度上,操作系统是一个控制软件
    管理应用程序,为应用程序提供服务,杀死应用程序,同时为用户提供一些操作界面

  • 计算机内部角度上,操作系统为资源管理
    管理外设,分配资源
    《操作系统原理》学习笔记:第1章 概述_第1张图片

  • 操作系统架构层次结构
    硬件之上,应用程序之下

  • Linux,Windows,Android的界面属于外壳(Shell),Kernel是研究重点,位于Shell之下

1.2 Kernel操作系统内部组件

  • CPU调度器

  • 物理内存管理

  • 虚拟内存管理

  • 文件系统管理

  • 中断处理与设备驱动

1.3 OS Kernel的特征

  • 并发
    计算机系统中同时存在多个运行的程序,需要OS管理和调度

    并发:在一段时间内,有多个程序运行

    并行:在一个时间点上,有多个程序可以运行。要求计算机系统有多个CPU

  • 共享
    “同时”访问,互斥共享(根据资源特征,区别是同时共享,还是互斥共享)

  • 虚拟
    将磁盘虚拟为文件,将内存虚拟为地址空间……
    利用多道程序设计技术,让每个用户都觉得有一个计算机专门为他服务

  • 异步
    程序的执行不是一贯到底,而是走走停停,向前推进的速度不可知
    但只要运行环境相同,OS需要保证程序运行的结果也要相同

1.4 学习操作系统的挑战

  • 操作系统很
    Windows XP有4500万行,实际操作系统代码量巨大,不可能完全掌握,目标是要理解其核心内容

  • 操作系统管理并发
    方法导致有趣的编程挑战

  • 操作系统代码管理原始硬件
    时间依赖行为,非法行为,硬件故障

  • 操作系统代码必须是高效
    低耗CPU、内存、磁盘的

  • 操作系统出错,就意味着机器出错
    操作系统必须比用户程序拥有更高的稳定性

  • 操作系统是系统安全的基础

  • 操作系统需要权衡
    空间和时间、性能和可预测性、公平和性能

  • 硬件方面,操作系统需要:良好的硬件管理,合理的资源分配
    例如:磁盘速度跟CPU、内存相差很多,操作系统需要协调处理

    1.5 操作系统实例

  • UNIX家族
    UNIX BSD(伯克软件发行版)基于此,开发有惠普hp,苹果apple等

  • Linux家族
    仿UNIX,基于此,开发有redhat,fedoro,Ubuntu等
    移动终端,google眼镜google手表

  • Window家族
    微软从DOS发展至今

1.6 操作系统的历史与发展

  • 早期计算机使用纸带传输程序和数据,操作系统只起到加载作用

  • CPU 等硬件快速发展,计算机速度得到提升,性能未得到充分利用

  • 内存容量越来越大,CPU执行多个程序(多道程序设计

  • 为了更好的利用计算机资源,并且更好的和用户交互,出现了分时系统(中断帮助操作系统完成分时调度)

  • 80年代,个人电脑操作系统
    最初:操作系统最初作为一个简单的服务提供者
    现在:支持协调和沟通的多应用系统

  • 发展趋势
    多核多处理
    网络的快速发展,出现了分布式操作系统

    1.7 操作系统结构

  • 简单操作系统:MS-DOS(1981~1994)不分模块的单体内核
    囿于内存,CPU的能力限制
    容易被攻击破坏,很难扩展

  • Unix操作系统:1972贝尔实验室设计
    可移植,可扩展

  • uCore实验用操作系统,仿照Unix操作系统

  • 微内核
    将操作系统主要的功能,如中断放入内核,其它的功能如文件管理通过服务调用
    优点:安全(地址隔离),松耦合
    缺点:文件系统和内存管理交互需多次拷贝,从函数调用变为系统调用,消息传递机制来进行通信,性能降低

  • 外核(产生于90年代,主要在学术界,需进一步研究)
    操作系统内核分为两块,其一完成硬件功能复制,另一个libOS与具体应用结合

    多个libOS可以并发访问硬件,且与具体应用结合,性能可调节优化

  • VMs虚拟机,运行在操作系统之下,硬件之上
    在一台物理计算机上可以虚拟出多台计算机系统
    硬件资源过剩,充分利用CPU性能
    VMM(虚拟机监视器)

你可能感兴趣的:(操作系统,操作系统)