zoukankan      html  css  js  c++  java
  • DAY-2 计算机基础之操作系统

    一、为何要有操作系统

    操作系统是用来协调、管理程序和硬件的程序,一般来说,计算机系统是一个复杂的系统,主要由多个处理器、主存、硬盘、键盘、鼠标、显示器、网络接口及其他输入设备组成,管理这些硬件是一个非常繁琐的工作,所以计算机安装了一套操作系统,如果应用程序员要掌握系统的所有细节,是一个巨大的工程,非常影响应用程序员的开发效率。

    为了让程序员更好的考虑自己的应用软件的编写就可以了,应用软件可以直接使用操作系统提供的功能使用硬件 。

    二、操作系统的位置

    操作系统位于计算机硬件和软件之间,本质也是软件。


    三、操作系统的功能

    操作系统是由操作系统的内核(管理硬件资源)和系统调用(为应用程序提供系统调用接口)组成。

    功能:

    1、应用程序有了接口程序后,不用考虑如何操作硬件的细节,专心开发自己的应用程序即可。(比如计算机界面的C盘、D盘下的各种文件和文件夹,我们只用打开读或者写就好,不用关心计算机内部的运行状态)

    2、当计算机要运行很多软件的时候,实际上是共享一套硬件,这个时候就会导致无序,操作系统的功能就是将这种无序变得有序。

     

    四、操作系统的发展

    第一代计算机(1940-1955):真空管和穿孔卡片,没有操作系统的概念,所有的程序的设计都是有纯粹的机器语言编写的,程序员需要申请时段,在时段内独享整个资源,即调试自己的程序,效率很低,造成很大的浪费。

    第二代计算机(1955-1965):晶体管和批处理系统,有了操作系统的概念,大型机开始出现,有了程序设计语言FORTRAN语言或汇编语言,可以把很多人的输入累积到一定数量后,然后计算机按顺序计算。

    第三代计算机(1965-1980):集成电路芯片和多道程序设计,出现了大型的科学计算机和商用计算机,也有了服务器的模型,计算机可以通过多道技术更加科学的管理同一个资源的调度问题,出现了Linux。

    第四代计算机(1980-至今):个人计算机


    五、多道技术

    多道技术中的多道指的是多个程序,多道技术的实现是为了解决多个程序竞争或者说共享同一个资源(比如CPU)的有序调度问题,解决方式即多路复用,多路复用分为时间上的复用和空间上的复用。

    现代计算机或者网络都是很多用户的,多个用户不仅共享硬件,而且共享文件、数据库等信息,共享意味着冲突和无序,操作系统主要用来处理来自多个程序发起的多个共享资源的请求,简称多路复用。

    多路复用有2种实现方式

    1、时间上的复用:当一个资源在时间上复用时,不同的程序或用户轮流使用它,第一个程序获取该资源使用结束后,在轮到第二个…第三个…

    例如:只有一个CPU,多个程序要在CPU上运行,操作系统会把CPU分给第一个程序,运行一段时间后(系统算法说了算),再分配给下一个程序,以此类推。

    2、空间上的复用:每个用户都获取了一个大的资源中的一小部分资源,从而减少了排队等待资源的时间。

    例如:多个运行程序同时进入内存后,硬件层面提供保护机制将 内存分割开(操作系统控制),这比一个一个排队进入内存效率要高。

     

  • 相关阅读:
    日报 18/07/10
    meta标签
    map 和 vector 的erase函数说明
    Intel CPU MMX SSE SSE2/3/4指令集手册下载URL
    关于c中 int, float, double转换中存在的精度损失问题
    c++ 常数后缀说明
    STL中容器的push()或者push_back()函数的一点说明
    fprintf, fscanf,printf,scanf使用时参数注意
    操作系统 庞丽萍 第七章
    辨析全局变量的声明与定义
  • 原文地址:https://www.cnblogs.com/fenglinglf/p/6878926.html
Copyright © 2011-2022 走看看