操作系统很难有一个精确的定义,因为它是一个复杂的软件,其外延边界并不固定,但是我们可以从 下图是站在用户角度看到的Windows10系统界面,提供了很方便的图形界面。 下图是操作系统把cpu、磁盘、内存三部分物理资源分别抽象为进程、文件、地址空间,从而给应用程序使用。 操作系统处于硬件之上、应用程序之下。 操作系统位于应用程序之下,为应用程序提供服务支持。 操作系统对外的接口叫做(外壳Shell),对内的接口叫做(内核Kernel),操作系统这门课更加关注的是操作系统的内部,即Kernel。 操作系统内部组件,包括: 操作系统是管理硬件资源的,计算机最重要的三大硬件资源分别是: ①CPU的管理涉及:CPU的调度、进程线程的管理、 ②内存的管理涉及:物理内存、虚拟内存。 ③磁盘的管理涉及:disk是以磁盘块为基本单位读写单位,抽象出文件系统,以文件的形式为应用程序提供存储、访问的环境。 除了这三块,和底层打交道的还有④中断处理和IO设备驱动。 (1) 并发 计算机系统中同时存在多个运行的程序,需要OS管理和调度。 能够并行执行的程序,一般要求计算机系统存在多个CPU,若计算机只有一个CPU则无法完成并行的工作。 (2) 共享 “同时”访问,实际上是 操作系统是一个资源管理器,它需要有效的让资源共享给不同的应用程序。 表面上看可以同时访问内存、IO等,但其实在操作系统的内部,这种“同时”是一种互斥共享访问,又称为“分时”访问。即在一个时间点上只有一个程序可以访问一个资源。 比如说,有一块内存,那么在一个时间点上,对于某一个内存单元只能有一个程序来访问。但是,如果把一块内存分为相互隔离的两半,那么就可以同时让两个程序同时访问不同的内存单元。 (3) 虚拟 操作系统直接面对的是硬件,但是操作系统把硬件虚拟化了。例如,把CPU虚拟化为进程;把磁盘虚拟化为文件;把内存虚拟化为地址空间。这样就使得每一个应用程序(或者用户)感觉到自己独占一台计算机。 这也是多到程序设计中常见的方式:把一台物理机器,虚拟成多台机器,在操作系统支持之下,就可以完成相应的功能。 (4) 异步 如果只有一个CPU,在任何一个时刻只能有一个程序在跑。下一个程序什么时候跑,取决于操作系统的调度。 当前市面上有各种各样的操作系统,有面向桌面的、面向服务器的、面向移动终端的、面向工控领域等,下面介绍一些经典的操作系统实例。 UNIX是在60年代,由 BSD是在UNIX操作系统之上,做了进一步改进和扩展,特别是在网络协议站上有独到之处,形成了 Linux是仿UNIX的操作系统,1991年由一个学生Linus发明。如今,Linux在智能终端领域得到了很大的发展,Google推出的Android操作系统也使用了Linux OS内核,当前Linux内核占据了最大的比例,远超苹果的IOS。 微软公司(microsoft)在90年代设计了WindowsOS,其前身是80年代DOS,在桌面领域,Windows占据绝对统治地位。但在服务器和终端领域,更多的是Linux操作系统。 Windows操作系统的出现,对计算机推广到千家万户起到了很大的作用。 CPU等硬件快速发展,计算机速度得到提升,性能未得到充分利用。 内存容量越来越大,可以存放多个程序,CPU执行多个程序。 为了更好的利用计算机资源,更好的和用户交互,出现了分时系统。 分时调度阶段 个人电脑操作系统 如今,操作系统有两大热门发展方向: ①集成电路发展:一个CPU中可以集成多个CPU核,多核多处理。 ②网速发展:出现分布式 操作系统。 随着物联网,大数据,云计算的发展。可以预见,将来一个人周围会有大量的嵌入式设备来提供感知,计算,服务。从早期的一群人围着一台计算机服务,逐步的发展演化到一群计算机为一个人服务。文章目录
一、什么是操作系统
功能的角度
来理解操作系统。操作系统其实是站在管理者的角度,来为应用程序和底层的硬件提供相应的管理、控制、服务的功能
。可以从对上和对下两个层面来理解。1.1 向上理解
控制程序
。
可以控制计算机系统中的应用程序如何运行;同时,限制不同的应用程序占用不同的资源。管理应用程序
、②为应用程序提供各种服务
、③杀死应用程序
。
如IO服务、声卡,网卡的访问等。
1.2 向下理解
资源分配器
。
在计算机系统中,有各种资源,例如,cpu是资源,内存是资源,外设也是资源。操作系统需要协调好各种资源,使资源的利用率和计算机的效率得到保障。1.3 承上启下
操作系统是一种特殊的软件,被称之为系统软件
。是直接面向硬件的,向下直接管理硬件资源
,向上提供抽象的接口
。二、OS-Kernel操作系统内核
2.1 操作系统内部组件
CPU
、内存
、磁盘
。2.2 OS-Kernel的特征
注意
,并发的并行的区别:
互斥共享
。
多道程序设计技术
,让每个用户都觉得有一个计算机专门为他服务。
三、操作系统实例
1. UNIX家族
肯•汤普森(Ken Thompson)
和丹尼斯•里奇(Dennis Ritchie)
(C语言之父),完成的基于C语言的操作系统,从而改变了世界。
UNIX-BSD(伯克利发行版)
。随后,出现了各种版本的 UNIX-BSD 系统。2. Linux家族
3. Windows家族
四、操作系统的发展历史
本网页所有视频内容由 imoviebox边看边下-网页视频下载, iurlBox网页地址收藏管理器 下载并得到。
ImovieBox网页视频下载器 下载地址: ImovieBox网页视频下载器-最新版本下载
本文章由: imapbox邮箱云存储,邮箱网盘,ImageBox 图片批量下载器,网页图片批量下载专家,网页图片批量下载器,获取到文章图片,imoviebox网页视频批量下载器,下载视频内容,为您提供.
阅读和此文章类似的: 全球云计算