zoukankan      html  css  js  c++  java
  • 操作系统

    操作系统简介

    1.为什么需要操作系统? 
      现代计算机系统是一个复杂的系统。应用程序员无法掌握其中的每一个细节,于是,计算安装了一层软件(系统软件),称为操作系统。它的任务就是为用户程序提供一个更好、更简单、更清晰的计算机模型,并管理计算机系统中的所有设备。简单来讲,将硬件这些繁琐的工作由操作系统来干,程序员只需要考虑自己的应用软件的编写,应用软件直接使用操作系统提供的功能来间接使用硬件。

    2.操作系统的位置
       操作系统位于计算机硬件与应用软件之间,本质也是一个软件。操作系统由操作系统的内核(运行于内核态,管理硬件资源)以及系统调用(运行于用户态,为应用程序员写的应用程序提供系统调用接口)两部分组成。

    3.操作系统的功能
      操作系统有着两个方面的作用:1. 隐藏了丑陋的硬件调用接口,为应用程序员提供调用硬件资源的更好,更简单,更清晰的模型(系统调用接口)2. 将应用程序对硬件资源的竞态请求变得有序化,不至于使输出存在抢占和乱码的情况。(为应用程序提供如何使用硬件资源的抽象、把多个应用程序对硬件的竞争变的有序化)

    4.操作系统的发展
      第一代计算机:真空管和穿孔卡片;它的产生是由于机械人类想用机械取代人力,而那时候的计算机完全没有操作系统的概念,所有的程序设计都是纯粹的机器语言编写的,并且需要在机器上预约时间,只能一个人独享,因此程序员可以即时的调试自己的程序,另一个方面,对于计算机来说又是一种资源浪费。
      第二代计算机:由于第一代的浪费,人们想到了批处理的方法,它将一批程序语言读入磁带中,由操作员将这些输送到系统中,然后等待输出。这也就产生了最初的操作系统的概念,人与计算机的结合系统。它虽然批处理,节省了机时,可是一方面人机交互过多,系统仍然是顺序计算(即串行),效率不高,另一方面程序员独享的调试时间也没有了,这极大的影响了开发效率。
      第三代计算机:第三代依然采用的是批处理,卡片可以被机房很快的读出,一个作业结束后,可以将作业装入空出来的内存区域运行,并且外部设备联机操作,不在需要操作员了。由于对于独享计算机的怀念,于是出现了分时操作系统:多个联机终端加多道技术。将多个客户同时加载到内存 ,由于他们思考和运行不一致,再利用多道技术就让人感觉他们是在独享这个计算机。再后来就出现了UNIX和Linux系统。
      第四代计算机:个人计算机。

    5.多道技术
       多道技术中的多道指的是多个程序,多道技术的实现是为了解决多个程序竞争或者说共享同一个资源(比如cpu)的有序调度问题,也叫多路复用,它分为时间上的复用和空间上的复用。
       空间上的复用:将内存分为几部分,每个部分放入一个程序,这样,同一时间内存中就有了多道程序。 时间上的复用:当一个程序在等待I/O时,另一个程序可以使用cpu,如果内存中可以同时存放足够多的作业,则cpu的利用率可以接近100%。将时间上的复用和空间上的复用结合起来就是多道技术。
     
     
  • 相关阅读:
    单词
    算法2
    GameplayKit的GKStateMachine用法与实例
    适配iPhoneX、iPhoneXs、iPhoneXs Max、iPhoneXr 屏幕尺寸及安全区域
    Swift使用AVAudioPlayer来调节游戏的背景音乐大小
    学好三角学(函数) — SWIFT和JAVASCRIPT游戏开发的必备技能 iFIERO.com
    应用UserDefaults储存游戏分数和最高分
    一步一步图文介绍SpriteKit使用TexturePacker导出的纹理集Altas
    SpriteKit在复制节点时留了一个巨坑给开发者,需要开发者手动把复制节点的isPaused设置为false
    运用GamePlayKit的GKEntity及GKComponent 的iOS游戏开发实例
  • 原文地址:https://www.cnblogs.com/zhangningyang/p/7155593.html
Copyright © 2011-2022 走看看