当前位置: 首页 > article >正文

网络工程师 (6)操作系统概述

 一、操作系统的定义

(一)基本定义

       操作系统(Operating System,简称OS)是计算机系统中至关重要的基础性系统软件。它是计算机硬件与上层软件之间的桥梁,负责管理和控制整个计算机系统的硬件和软件资源,并合理地组织调度计算机的工作和资源的分配。操作系统以提供给用户和其他软件方便的接口和环境为目标,使得用户能够灵活、方便、有效地使用计算机,同时确保整个计算机系统能高效地运行。

(二)用户接口

       操作系统为用户提供了一个友好的、易于操作的界面。这个界面可以是命令行界面(CLI),也可以是图形用户界面(GUI)。用户通过界面与操作系统进行交互,实现各种操作和功能。

(三)类型与分类

       操作系统根据其应用场景和功能特点可以分为多种类型,如服务器操作系统(如Linux、Unix等)、嵌入式操作系统(用于智能家居设备、工业控制设备等)、单用户单任务操作系统、单用户多任务操作系统以及多用户多任务操作系统等。不同类型的操作系统具有不同的特点和适用范围。

(四)实现方式与技术

       操作系统的实现涉及多个关键技术领域,包括中断处理、进程调度、内存管理、文件系统实现等。随着计算机技术的不断发展,操作系统的实现方式也在不断演进。从最初的整体式结构到模块化结构、层次式结构和微内核结构等,操作系统的设计越来越灵活和高效。

(五)重要性与应用

       操作系统是计算机系统中最基本的系统软件之一,它对于计算机系统的稳定性和性能具有至关重要的影响。一个好的操作系统能够提高计算机系统的运行效率、降低故障率,并为用户提供更加便捷和高效的操作体验。同时,操作系统也是软件开发和应用部署的基础平台,为各种应用程序的运行提供了必要的支持和保障。

二、操作系统的功能

(一)进程与处理机管理

  1. 进程控制:主要功能是为作业创建进程、撤销进程以及控制进程在运行过程中的状态转换。
  2. 进程同步:系统需要设置相应的进程同步机制,以实现互斥机制和进程同步。常用的同步机制包括信号量机制等。
  3. 进程通信:进程间需要传递数据,通常采用的是直接通信方式,即由源进程利用发送命令直接将信息挂到目标进程的消息队列上,以后由目标进程利用接收命令从其消息队列中取出消息。
  4. 调度:包括作业调度和进程调度。作业调度负责给作业分配资源,将其建立为进程,并插入到就绪队列中;进程调度则负责将处理机分配给进程,并为其设置运行现场,使其投入执行。

(二)作业管理

       作业管理涉及任务、界面管理、人机交互、图形界面、语音控制和虚拟现实等方面。操作系统通过作业管理,使用户能够方便地提交作业、控制作业的运行,并获取作业的运行结果。

(三)存储管理

  1. 内存分配:操作系统负责为各个用户作业分配内存空间,可以采用静态分配和动态分配两种方式。静态分配方式在作业装入后的整个运行期间不允许该作业再申请新的内存空间,也不允许作业在内存中“移动”;动态分配方式则允许作业在运行期间重新申请新的内存空间。
  2. 内存保护:操作系统需要保证各个应用程序都仅仅在自己的空间中运行,互不干扰,同时防止其他应用程序访问系统的数据和资源。一种简单的内存保护机制是设置两个界限寄存器,分别存放正在执行程序的上界和下界。
  3. 地址映射:操作系统需要借助于硬件将地址空间中的逻辑地址转换为内存空间中与之对应的物理地址。
  4. 内存扩充:操作系统可以通过请求调入功能和置换功能,从逻辑上扩充内存容量。置换功能是指发现内存不够时,可以把内存中不经常使用的数据先调到外存中,把急需的数据先调入内存。

(四)设备管理

  1. 缓冲管理:操作系统通过缓冲管理,可以有效地缓和CPU和I/O设备速度不匹配的矛盾,提高CPU的利用率,进而提高系统吞吐量。
  2. 设备分配:当处理机请求分配设备时,操作系统负责进行设备的分配和回收。
  3. 设备处理:操作系统实现CPU和设备控制器之间的通信,要求完成指定的I/O操作。

(五)文件管理

  1. 文件存储空间的管理:操作系统为每个文件分配必要的外存空间,提高外存的利用率和文件系统的存取速度。
  2. 目录管理:操作系统进行文件目录的管理,并实现高速度的文件索引。
  3. 文件的读/写管理和保护:操作系统使用同一个文件指针实现对文件的读写操作,并保护文件的安全性,防止非法人员对文件进行操作。

 结语  

学会调整心态

以积极态度面对生活

!!!


http://www.kler.cn/a/523203.html

相关文章:

  • 多级缓存(亿级并发解决方案)
  • three.js用粒子使用canvas生成的中文字符位图材质
  • 【教学类-89-01】20250127新年篇01—— 蛇年红包(WORD模版)
  • 认识小程序的基本组成结构
  • 使用kitty terminal遇到的‘xterm-kitty‘: unknown terminal type.
  • OpenCV:开运算
  • 浅析 CSS 中块级框,块容器框和块框
  • 2024年记 | 凛冬将至
  • 【Java-数据结构】Java 链表面试题下 “最后一公里”:解决复杂链表问题的致胜法宝
  • 快速分析LabVIEW主要特征进行判断
  • Java面试题2025-并发编程基础(多线程、锁、阻塞队列)
  • Java基于SSM框架的互助学习平台小程序【附源码、文档】
  • GPS信号捕获【时间-频率空间搜索方法】
  • 指定dpkg安装deb包时的安装路径
  • SpringBoot 使用海康 SDK 和 flv.js 显示监控画面
  • objection的简单使用
  • 一图展示汽车和航空电子领域的安全和互操作性解决方案的概览
  • https数字签名手动验签
  • PythonFlask框架
  • Effective Objective-C 2.0 读书笔记—— objc_msgSend
  • 跨平台物联网漏洞挖掘算法评估框架设计与实现文献综述:物联网设备漏洞挖掘的挑战和机遇
  • iPhone SE(第三代) 设备详情图
  • 约瑟夫问题(信息学奥赛一本通-2037)
  • 具身智能体俯视全局的导航策略!TopV-Nav: 解锁多模态语言模型在零样本目标导航中的顶视空间推理潜力
  • 从源码深入理解One-API框架:适配器模式实现LLM接口对接
  • python Flask-Redis 连接远程redis