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

操作系统笔记

1、操作系统是什么

操作系统是管理硬件和软件的一种应用程序。操作系统是运行在计算机上最重要的一种软件,它管理计算机的资源和进程以及所有软硬件。为计算机提供一种中间层,使得应用软件和硬件进行分离,让我们无需关注硬件的实现,更多关注软件应用。

通常计算机都运行着许多程序,它们都需要对内存和CPU进行交互,操作系统的目的就是为了保证这些操作可以准确无误的进行。

1. 内核与外壳分别是什么?
  • 内核就是能操作硬件的程序

    • 内核管理系统的进程、内存、设备驱动程序、文件、网络等,决定着系统的性能和稳定性

  • 外壳就是围绕内核的应用程序

2、操作系统的主要功能

(1)进程管理:

进程管理的主要作用就是进程调度,在单核CPU下,操作系统会为每个进程分配一个任务,进程管理十分简单。在多核CPU下,操作系统除了要为进程分配任务外,还需要解决处理器的调度,分配和回收等。

(2)内存管理:

内存管理主要是操作系统负责管理内存的分配、回收,在进程需要时分配内存以及在进程结束时回收内存,协调内存资源,使用合理的页面置换算法进行页面的换入换出。

(3)设备管理:

根据确定的设备分配原则对设备进行分配,使设备和主机可以并行的工作

(4)文件管理:

有效管理文件的存储空间,合理地组织和管理文件系统,为文件访问和文件保护提供有效的手段

(5)提供用户接口:

操作系统提供了访问应用程序的硬件的接口,使用户能够通过应用程序发起系统调用从而操纵硬件,实现需要的功能。

3、IO操作的方式

选择判断IO控制方式有三条原则

1、数据传送速度快,能满足用户的需求但不丢失数据

2、系统开销小,所需的处理控制程序少

3、能充分发挥硬件资源的能力,使IO设备繁忙,让CPU等待时间更少

根据上述原则IO操作分四类
1、直接访问:

直接访问由用户进程直接控制主存或CPU和外围设备的信息传送。直接程序控制方式又称为忙/等待方式。

2、中断驱动:

为了减少CPU等待时间引入中断机制。中断机制引入后,外围设备仅当操作正常结束或异常结束时才向CPU发出中断请求。在I/O设备输入每个数据的过程中,无需CPU干预,一定程度实现CPU和I/O并行工作。

3、DMA直接内存访问:

为了进一步减少CPU对I/O设备的干预,防止因并行操作设备过多使CPU来不及处理或因速度不匹配而造成的数据丢失现象,引入DMA控制方式。

4、通道控制方式:

通道是独立于CPU的专门负责输入输出控制的处理机,他控制设备与内存直接进行数据交换。拥有通道指令,这些指令由CPU启动,并在操作结束时向CPU发出中断信号。

4、操作系统的目的

1,管理计算机资源,包括CPU、内存、磁盘驱动器、打印机等。

2,提供一种图形界面,是用户和计算机之间的桥梁。

3,为其他软件服务,操作系统和软件交互,为软件提供其运行时所需要的必要资源。

 

http://www.lryc.cn/news/454159.html

相关文章:

  • 两个wordpress网站共用一个数据库的数据表
  • 工具方法 - 面试中回答问题的技巧
  • 频繁full gc问题排查及解决
  • 昇思学习打卡营第33天|基于MindSpore的恶性皮肤肿瘤识别
  • 基于SpringBoot+Vue的网约车管理系统
  • Java、PHP、ASP、JSP、Kotlin、.NET、Go
  • 华为-单臂路由
  • AI应用的东风,奥特曼不想错过
  • LeetCode[中等] 238. 除自身以外数组的乘积
  • Linux plt表调用汇编代码分析
  • ubunut声卡配置 播放视频没有声音的解决方法 蓝牙问题
  • 《软件工程概论》作业一:新冠疫情下软件产品设计
  • 大厂出来的人为什么不比你高效?
  • 71.【C语言】动态内存管理(重点)(4)
  • JavaScript 用HTML5约束验证API做表单验证
  • Unity 编辑器多开
  • 【Spring Boot React】Spring Boot和React教程 完整版
  • Linux中的多线程
  • 《计算机原理与系统结构》学习系列
  • 征程6 工具链常用工具和 API 整理(含新手示例)
  • 我有一张图,我怎么让midjourney按照这张图继续生成呢?
  • MSF捆绑文件
  • 01_SQLite
  • 【STM32开发笔记】移植AI框架TensorFlow到STM32单片机【下篇】
  • 畅阅读小程序|畅阅读系统|基于java的畅阅读系统小程序设计与实现(源码+数据库+文档)
  • 【机器学习(十一)】糖尿病数据集分类预测案例分析—XGBoost分类算法—Sentosa_DSML社区版
  • 二分查找一>寻找峰值
  • 《Linux从小白到高手》理论篇:深入理解Linux的网络管理
  • redis数据类型介绍
  • 一张照片变换古风写真,Flux如何做到?