博客
关于我
DayDayUp01:OS入门知识点梳理灌输
阅读量:526 次
发布时间:2019-03-07

本文共 1641 字,大约阅读时间需要 5 分钟。

操作系统(OS)学习笔记

OS目标

  • 方便性:提供图形用户界面(GUI),提升人机交互体验。
  • 有效性:优化系统资源利用率,提高系统吞吐量。
  • 可扩充性:采用微内核架构,便于增添新功能模块或修改现有功能。
  • 开放性:解决硬件和软件兼容性问题,实现跨平台支持。
  • OS作用

  • 用户与硬件的接口:支持多种接入方式(命令、系统调用、图标-窗口),实现与OS的通信。
  • 资源管理者:负责处理机、存储器、I/O设备的管理,包括文件操作。
  • 资源抽象:在裸机上安装软件,隐藏底层实现细节,提供便于使用的抽象接口。
  • 推动OS发展的主要动力

  • 计算机资源利用率的提升:从单道批处理到多道批处理,再到多处理机环境。
  • 图形用户界面:满足用户对人机交互的友好需求。
  • 硬件迭代:随着微芯片和外设更新,OS需要不断适应新硬件。
  • 计算机体系结构演变:从单处理机到多处理机,以及多核、分布式环境的支持。
  • 新应用需求:如多媒体功能的增加,推动OS功能扩展。
  • OS发展历程

  • 初期系统

    • 纸带机:资源利用率低,CPU与I/O速度不匹配。
    • 脱机输入/输出:利用纸带快速读取技术。
    • 单道批处理系统:内存仅维护一道作业,但未充分利用资源。
    • 多道批处理系统:作业排队处理,资源共享,CPU保持忙碌状态。
    • 分时系统:支持多路卡,实现交互。
    • 实时系统:处理事件的及时性要求严格,需协调任务运行。
  • 微机OS发展

    • 单用户单任务:如CP/M和MS-DOS,只允许一个用户和一个任务。
    • 单用户多任务:允许多任务并发执行,提升资源利用率。
    • 多用户多任务:多个用户共享资源,任务并发执行,进一步提高效率。
  • OS基本特性

  • 并发性:宏观多任务并发,微观分时交替。

    • 多个程序同时运行,但通过时间片机制协调访问资源。
  • 共享性

    • 互斥共享:临界资源只允许一个进程访问。
    • 同时访问:微观上交替访问资源,避免冲突。
    • 并发与共享是多用户多任务的基础,资源管理需协调多个进程的资源争夺。
  • 虚拟性

    • 时空复用:多道程序技术,充分利用CPU空闲时间。
    • 空分复用:通过虚拟存储技术扩展内存容量。
  • 异步性

    • 进程执行速度受限于资源限制,但结果始终一致。
  • OS主要功能

    处理机管理

  • 进程控制:创建、终止进程,管理进程状态。
  • 进程调度:采用算法选择运行进程,提高利用率。
  • 进程同步:协调进程运行,如互斥和同步机制。
  • 进程通信:实现进程间信息传递。
  • 存储器管理

  • 内存分配:静态或动态分配,提高利用率。
  • 内存保护:确保程序运行互不干扰。
  • 地址映射:逻辑地址到物理地址的转换。
  • 内存扩充:用Request ZukDF功能提升效率。
  • 设备管理

  • 缓冲管理:引入缓冲区,提高I/O效率。
  • 设备分配:动态分配I/O设备,减少等待时间。
  • 文件管理

  • 文件存储:管理文件存储空间。
  • 目录管理:组织文件结构,便于查找。
  • 文件保护:控制文件访问权限,防止未授权访问。
  • 接口设计

  • 用户接口:支持联机、脱机和图形界面。
  • 程序接口:提供操作系统服务的统一入口。
  • 现代OS新功能

  • 系统安全:认证、访问控制、反病毒技术。
  • 网络功能:资源管理、通信支持。
  • 多媒体支持:音视频文件处理,实时调度。
  • OS结构设计

    现有结构

  • 无结构OS:功能模块间无特定顺序。
  • 模块化结构:功能划分明确,高内聚低耦合。
  • 分层式结构:层次化模块设计,依赖性明确,但效率可能下降。
  • 客户/服务器模式

    • 组成:客户机、服务器、网络系统。
    • 交互:客户请求、服务器响应。
    • 优点:数据分布存储、灵活扩展、集中管理。

    面向对象技术

  • 基本概念

    • 对象:属性和方法的实体,无外界可见。
    • :对象的抽象,记录属性和方法。
    • 继承:类间继承,共用属性和方法。
  • 优点

    • 设计清晰,生产率提升。
    • 系统易维护和扩展。
  • 微内核OS

  • 基本概念
    • 小内核设计,基于客户/服务器模式。
    • 面向对象技术,分离机制与策略。
  • 功能特点
    • 轻量级进程和线程管理。
    • 下游文档简洁,便于移植。
  • 优点
    • 可扩展性强,适合分布式系统。
  • 不足
    • 低效率,上下文切换频繁。
  • 如需更多内容或深入讨论,请联系哦!

    转载地址:http://ujynz.baihongyu.com/

    你可能感兴趣的文章
    NuGet(微软.NET开发平台的软件包管理工具)在VisualStudio中的安装的使用
    查看>>
    nuget.org 无法加载源 https://api.nuget.org/v3/index.json 的服务索引
    查看>>
    Nuget~管理自己的包包
    查看>>
    NuGet学习笔记001---了解使用NuGet给net快速获取引用
    查看>>
    nullnullHuge Pages
    查看>>
    NullPointerException Cannot invoke setSkipOutputConversion(boolean) because functionToInvoke is null
    查看>>
    null可以转换成任意非基本类型(int/short/long/float/boolean/byte/double/char以外)
    查看>>
    Numix Core 开源项目教程
    查看>>
    numpy
    查看>>
    NumPy 库详细介绍-ChatGPT4o作答
    查看>>
    NumPy 或 Pandas:将数组类型保持为整数,同时具有 NaN 值
    查看>>
    numpy 或 scipy 有哪些可能的计算可以返回 NaN?
    查看>>
    numpy 数组 dtype 在 Windows 10 64 位机器中默认为 int32
    查看>>
    numpy 数组与矩阵的乘法理解
    查看>>
    NumPy 数组拼接方法-ChatGPT4o作答
    查看>>
    numpy 用法
    查看>>
    Numpy 科学计算库详解
    查看>>
    Numpy.fft.fft和numpy.fft.fftfreq有什么不同
    查看>>
    Numpy.ndarray对象不可调用
    查看>>
    Numpy.VisibleDeproationWarning:从不整齐的嵌套序列创建ndarray
    查看>>