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

操作系统(复试准备)

操作系统(复试准备)

第一章知识点

操作系统概述

操作系统的概念

负责协调软硬件等计算机资源的工作

为上层用户,应用程序提供简单易用的接口

是一种系统软件

操作系统的功能与目标

资源的管理者

处理机管理,存储器管理,文件管理,设备管理

向上层提供服务

对于普通用户:GUI图形界面(手机),命令接口:分别为联机命令接口(说一句做一句),脱机命令接口(说一堆做一堆)

对于程序员:程序接口:即为系统调用

在这里插入图片描述

操作系统的四个特征

分别为共享,并发,虚拟和异步

其中共享和并发为最基本两个特征,二者互为存在条件

并发

易混淆-并发与并行

并行指的是多个程序(线程)在同一时刻同时允许

并发指的是多个程序在同一时间间隔内发生,宏观同时,微观上交替运行(看cpu是否多核,多核cpu可以在同一时刻执行多个任务,若为单核器cpu在只能是并行)

共享

分为互斥共享和同时共享

互斥共享:在一个时间段内只允许一个进程访问该资源

同时共享:在同一时间段内允许多个进程访问该资源

虚拟

指的是把物理上的一个实体变为逻辑上的多个对应物

技术层面分为时分和空分

时分可以想到虚拟处理器

空分则可以类比于虚拟存储器

异步

在多道程序环境下多个程序总是以未知的速度前进

操作系统的发展阶段(简单了解)

手工操作阶段-批处理阶段(单-》多)-分时操作系统-实时操作系统-网络操作系统,分布式操作系统,个人pc操作系统

操作系统的运行机制

程序是如何运行?

c语言代码-》编译-》机器所能识别的二进制机器指令—》cpu一条条执行这些二进制指令就是运行程序的过程

操作系统中的内核程序和应用程序

应用程序:我们现在在桌面所看到的app就是应用程序

内核程序:微软苹果一帮人所实现的操作系统,写的就是内核程序,内核作为管理者,会让cpu执行一些特权指令这些指令影响重大只允许管理者即内核使用,自此要分为内核态(管态)和用户态(目态)

内核态与用户态

内核态:可以选择执行特权指令

用户态:只能执行非特权指令

如何区分:psw(一般1是内核态,0为用户态)

内-》用:通过特权指令讲psw中的1-》0

用-》内:一般是通过中断

中断与异常

cpu会运行两种程序,一个是操作系统的内核程序另一个则为应用程序

“中断”是让os内核夺回cpu使用权的唯一途径(因为如果没有中断机制一旦某个应该程序上处理机运行这个应用程序就是会在cpu上一直运行)

分类

内中断:也成为异常或者例外其类型由:陷入,故障和中止,其与当前执行的指令有关,中断信号来自于cpu内部

外中断:也称为中断,其分有时钟中断和IO请求中断,与当前执行指令无关中断信号来自cpu外部

其外中断也可以称为侠义上的“中断”,而此时外中断更偏向于称之为“异常”

陷入:程序故意引起

故障:错误条件所造成的可能被内核程序修复(修复后还给cpu继续执行当前指令(缺页))也可能寄

终止:致命错误引起,无法修复,一般不再将cpu使用权还给该程序(除于零运算)

在这里插入图片描述

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

相关文章:

  • 2023年CDGA考试模拟题库(501-600)
  • NCNN+Int8+yolov5部署和量化
  • springboot+vue.js协同过滤算法之智能旅游推荐系统java
  • Google Brain新提出的优化器“Lion”,效果要比Adam(W)更好
  • 慢雾:Discord 私信钓鱼手法分析
  • 2023-2-25 刷题情况
  • 【数据结构】双向链表的接口实现(附图解和源码)
  • 数据结构与算法之[把数字翻译成字符串]动态规划
  • java 面向对象三大特性之多态 万字详解(超详细)
  • git push origin master 情况
  • ElasticSearch查询优化routing
  • 【HashMap 1.7和1.8】
  • 【Zabbix实战之故障处理篇】Zabbix监控中文乱码问题解决方法
  • 学习(mianshi)必备-ClickHouse高性能查询/写入和常见注意事项(五)
  • 在Kotlin中探索 Activity Results API 极简的解决方案
  • 样式冲突太多,记一次前端CSS升级
  • 如何解决报考PMP的那些问题?
  • 数据结构栈的经典OJ题【leetcode最小栈问题大剖析】【leetcode有效的括号问题大剖析】
  • 数据结构与算法之打家劫舍(一)动态规划思想
  • 无人驾驶路径规划论文简要
  • C++ sort()函数和priority_queue容器中比较函数的区别
  • STM32开发(14)----CubeMX配置ADC
  • Simple RNN、LSTM、GRU序列模型原理
  • 【原创】java+swing+mysql生肖星座查询系统设计与实现
  • CentOS 环境 OpneSIPS 3.1 版本安装及使用
  • SQL95 从 Products 表中检索所有的产品名称以及对应的销售总数
  • 平时技术积累很少,面试时又会问很多这个难题怎么破?别慌,没事看看这份Java面试指南,解决你的小烦恼!
  • SQL Server 数据库的备份
  • NCNN Conv量化详解1
  • Redis大key多key拆分方案