• 操作系统


    操作系统做了什么?

    执行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播放器
    
  • 相关阅读:
    对眼睛有利的屏幕颜色
    C++的动态联编与静态联编【转载】
    关于虚析构函数
    虚析构函数的使用(转载!)
    c/c++内存机制(转)
    delete this
    PhpStorm环境配置
    flutter之路由与导航
    flutter之Widget
    Flutter项目初步认识
  • 原文地址:https://www.cnblogs.com/pluslius/p/10070390.html
Copyright © 2020-2023  润新知