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

    操作系统做了什么?

    执行helloword程序
    
    1.找到helloworld程序的相关信息,检查其类型是否是可执行文件,并通过程序首部信息,确定代码和数据在可执行文件中的位置并计算出对应的磁盘块地址
    
    2.创建一个新的进程,并将helloword执行文件映射到该进程结构,表示由该进程执行hellworld程序
    
    3.为helloword程序设置cpu上下文环境,并跳到程序开始处
    
    4.执行helloworld程序的第一条指令,发生缺页异常
    
    5.操作系统,分配一页物理内存,并将代码从磁盘读入内存,然后进行执行helloworld程序
    
    6.helloworld程序执行puts函数(系统调用),在显示器上写一字符串
    
    7.操作系统找到要将字符串送往的显示设备,通常设备是由一个进程控制的,所以,操作系统将要写的字符串送给该进程
    
    8.控制设备的进程告诉设备的窗口系统它要显示字符串,窗口系统确定这是一个合法的操作,然后将字符串转换成像素,将像素写入设备的存储印象区
    
    9.视频硬件将像素转化成显示器可接收的一组控制数据信号
    
    10.显示器解析信号,激发液晶屏
    
    11.在屏幕上看到了'helloworld'
    
    总结: 
       用户程序 -os调用->进程管理 
       用户程序 -os调用->存储管理
       用户程序 -os调用->文件系统
    

    操作系统的定义与作用

    1. 操作系统是计算机系统中的一个系统软件,是一些程序模块的集合
    
    2. 特点
      1. 有效:系统效率,资源利用率(cpu,io是否忙碌)
      2. 合理:软硬件资源管理是否合理
      3. 方便使用:用户界面与编程接口
      
    3. 作用
      1. 资源的管理者
         1.硬件资源:
            cpu,内存,设备(i/o设备,磁盘,网卡等)
         2.软件资源:
            磁盘上的文件,各类管理信息等
         3.怎样管理资源:
            1.跟踪记录资源的使用情况(哪些资源空闲)
            2.确定资源分配策略(算法)
              1.静态分配策略
              2.动态分配策略
              3.实施资源的分配和回收
         4.从资源管理的角度
            1.进程/线程管理(cpu管理)
               1.进程线程状态,控制,同步互斥,调度
            2.存储管理
               1.分配/回收,地址转换,存储保护,内存扩充
            3.文件管理
               1.文件目录,文件操作,磁盘管理,文件存取控制
            4.设备管理
               1.设备驱动,分配回收,缓冲技术
            5.用户接口
               1.系统命令,编程接口
      2. 向用户提供各种服务
        1.在操作系统之上,从用户角度来看
           1.操作系统为用户提供来一组功能强大,方便易用的命令或系统调用
        2.典型的服务
           1.进程的创建,执行,文件和目录的操作,i/o设备的使用,各类统计信息
      3. 对硬件机器的扩展
        1. 应用程序
           --------虚拟机器界面
           操作系统
           --------物理机器界面
           硬件
    
    

    操作系统的主要特征

    1.并发:处理多个同时性的能力
      1.问题(活动切换,保护,相互依赖的活动间的同步)
        1.计算机系统同时运行多个程序,单cpu上
          1.宏观上这些程序是同时执行
          2.微观上任何时刻只有一个程序真正在执行
      2.并行 多指不同程序同时在多个硬件部件上执行
     
    2.共享:操作系统与多个用户程序共同使用计算机系统中的资源,操作系统要对系统资源进程合理分配和使用,资源在同一个时间段内交替被多个进程所用
        1.互斥共享(打印机)
        2.同时共享(可重入代码,磁盘文件)
        
    3.虚拟
      1.一个物理实体映射为若干个对应的逻辑实体,分时或分空间
      2.虚拟是操作系统管理系统资源的重要手段,可提高资源利用率
        1.cpu --每个进程的'虚处理机'
        2.存储器 --每个进程都有独立的虚拟地址空间(代码+数据+堆栈)
        3.显示设备 -- 多窗口或虚拟终端
    4.随机:操作系统必须随时对以不可预测的次序发生的事件进行响应并处理
       1.进程的运行速度不可预知,多个进程并发执行,走走停停,无法预知每个进程的运行推进的快慢
       2.难以重现系统在某个时刻的状态(包括重现运行中的错误)
    

    典型操作系统的架构

    windows系统体系结构

    系统进程 服务进程 用户进程 环境子系统
    动态链接库(DLL)
    -------------------------------------用户态
    系统服务分发起       内核态
    内核态可调用接口
    
    执行体
    
    内核 设备驱动程序   图形与窗口
    
    硬件抽象层(HAL)
    ---------------------------------------物理硬件
    硬件
    
    应用程序
    系统功能调用
    操作系统
    计算机硬件
    

    UNIX操作系统

    -------------------------用户态
         系统调用接口
         
    文件系统    进程控制子系统
    -------------------------硬件
    

    linux操作系统

    -------------用户态
    系统调用接口
    文件系统
    虚拟内存管理
    进程调度
    物理内存管理
    驱动管理
    网络管理
    异常处理
    中断处理
    驱动管理
    -------------
    

    安卓系统

    1.android应用程序
    2.应用程序框架
    3.系统库和android运行时
    4.linux内核
    

    操作系统的分类

    1. 批处理操作系统
      1.工作方式 
        1.用户将作用交给系统操作员
        2.系统操作员将许多用户的作用组成一批作业,输入到计算机系统中,在系统中形成一个自动转接的连续的作业流
        3.启动操作系统
        4.系统启动,依次执行每个作业
        5.由操作员将作业结果交给用户
      2.追求目标
        1.提供资源利用率,增加作业处理吞吐量
      3.批处理系统中的作业包括
        1.用户程序
        2.数据
        3.作业说明书 
      4.成批:通常用若干个作业组成,用户提交作业后只能等处理结果,不能干预自己作业的执行
      5.批作业处理:
        1.对一批作业中的每个作业进行相同的处理,从磁带读取用户作业和编译链接程序,编译链接用户作业以生成可执行程序,启动执行,执行并输出结果
      6.问题:
        1.慢速的输入输出处理直接由主机来完成,输入输出时,cpu处于等待状态
      7.解决方案:
        1.卫星机,完成面向用户的输入输出(纸带或卡片),中间结果暂存在磁带或磁盘上
      8.spooling系统技术
        1.在一台计算机上利用磁盘作缓冲,将输入,计算,输出分布组织成独立的任务流,使i/o和计算真正并行
    2. 分时系统
       1.时间片
         操作系统将cpu的时间划分成若干个片段,称为时间片
       2.分时系统与批处理系统结合
    3. 实时操作系统
       1.是指计算机能够及时响应外部事件的请求,在规定的严格时间内完成对该事件的处理,并控制所有实时设备和实时任务协调一致的工作
    4. 个人计算机操作系统
    5. 网络操作系统
       1.按网络体系结果协议标准开发的软件
    6. 分布式操作系统
       1.以计算机网络为基础,或以多处理机为基础
    7. 嵌入式操作系统
       1.在各种设备,装置或系统中,完成特定功能的软硬件系统汽车,手机,电视机,mp3播放器
    
  • 相关阅读:
    图像检索(image retrieval)- 11
    图像检索(image retrieval)- 10相关
    Mock.js简易教程,脱离后端独立开发,实现增删改查功能
    Azure Monitor (3) 对虚拟机磁盘设置自定义监控
    Azure Monitor (1) 概述
    Azure SQL Managed Instance (2) 备份SQL MI
    Azure Virtual Network (17) Private Link演示
    Azure Virtual Network (16) Private Link
    Azure Virtual Network (15) Service Endpoint演示
    Azure Virtual Network (14) Service Endpoint服务终结点
  • 原文地址:https://www.cnblogs.com/pluslius/p/10070390.html
Copyright © 2011-2022 走看看