《操作系统》- 1.2 什么是操作系统

定义

  • 没有一个完整,精确,公认的定义。
  • 从功能和特点来介绍操作系统。

用户角度看,操作系统是一个控制软件。
可以控制操作系统上面的软件,应用程序怎么来运行。限制不同的程序来占用不同的资源。
管理应用程序。
为应用程序提供服务。

计算机内部看:
资源管理。操作系统是资源分配的分配器。 在我们的计算机内,CPU,内存都是资源。
管理外设,分配资源。

操作系统可以把CPU抽象为进程,把磁盘抽象为文件,把内存抽象为地址空间:


图片.png

操作系统属于一种软件。
操作系统直接面向硬件。

在软件角度:
应用软件:办公软件,视频播放软件。
操作系统位于应用软件之下,为应用软件提供服务支撑。

Linux, Windows, Android 的界面属于外壳(Shell),而不是内核(kernel)Kernel是我们的研究重点,在Shell之下。

图片.png

这一层Shell,就相当于操作系统对外暴露出的接口。

Shell分为:GUI类型Shell和命令行类型Shell。

我们操作系统这门课主要是学习kernel。

操作系统 = Kernel + Shell

操作系统作用

主要是管理计算机资源。

计算机资源分类

主要分为:CPU,内存,磁盘三类资源。
计算机资源还有:网卡,声卡,显卡等。
这些都是在计算机操作系统管理范围之内。

Kernel

Kernel是操作系统内部组件,包括:

CPU调度器
物理内存管理
虚拟内存管理
文件系统管理
中断处理与设备驱动

OS Kernel的特征:
a.并发
计算机系统中同时存在多个运行的程序
需要OS管理和调度

注意:并发和并行的区别。
并发:在一段时间内可以有多个程序运行,这段时间可长可短;
并行:在一个时刻上面,有多个程序运行。
并行的条件是允许计算机内部存在多个CPU,如果计算机内部只有一个CPU,那么是不能完成并行工作的,不能让一个程序在一个时刻都在跑。

b.共享(都是针对资源)
『同时』访问,这里的同时不是同一时刻,而是很短的时间段,让你看起来像是多个程序在访问。
互斥共享。

c.虚拟
利用多道程序设计技术,让每个用户都觉得有一个计算机专门为他服务。

操作系统直面的是硬件,直接将硬件虚拟化了,比如说,我们把CPU虚拟为进程,把磁盘虚拟为文件,把内存虚拟化为地址空间,带来的好处是,每一个应用程序,每一个用户感觉自己都独立拥有一台计算机。

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

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1. 基础知识 1.1、 基本概念、 功能 冯诺伊曼体系结构1、计算机处理的数据和指令一律用二进制数表示2、顺序执...
    yunpiao阅读 5,458评论 1 22
  • feisky云计算、虚拟化与Linux技术笔记posts - 1014, comments - 298, trac...
    不排版阅读 3,939评论 0 5
  • # 第一章复习题答案p3 1、计算机系统由哪些部分组成? 2、什么是计算机的操作系统?答:操作系统是计算机的一种系...
    叛逆闲人阅读 3,458评论 0 0
  • 操作系统概论 操作系统的概念 操作系统是指控制和管理计算机的软硬件资源,并合理的组织调度计算机的工作和资源的分配,...
    野狗子嗷嗷嗷阅读 12,114评论 3 34
  • I amworking in theMarketing Department of a 500 fortune C...
    月上飞鸟阅读 266评论 0 0