操作系统之CPU管理的直观想法
计算机:是工具,帮助解决实际问题
操作系统,是为了方便使用硬件
计算机模型: 图灵机,模拟人类计算 起初的图灵机就像一个只会做一道菜的厨师
通用图灵机,核心是设置控制器动作(修改控制器),把逻辑读入控制器,把程序载进来,解释执行程序
程序→内存→控制器解释执行→输出结果
用一个IP(PC)指针指向它,取指执行
BIOS:基本输入输出系统
上机后先检查RAM,键盘,显示器,软盘和硬盘, CS:(段寄存器):0XFFFF, 左移四位+IP, IP:(偏移寄存器)0X0000
计算机开机时,从0扇道0扇区(又叫引导扇区),读入0x7c00处 ,一个扇区512个字节
批处理:做完一件事再去做下一件,中间可能会停下来等待
多道程序:多个程序同时出现在计算机中,交替向前进(从这就 开始逐渐引出进程的概念)
分时系统:使用认数增加,一个人可能不停止命令,独占资源,其余人就没办法使用,使用效果差,在服务器上很常见,从而有了分时系统,一个人使用一段时间,就切给另一个人,以前是实在不行再切出去
操作系统要让多个程序合理推进,这就是进程管理
多程序图谱:包括CPU和内存
文件操作视图:方便用户使用,包括:IO设备,磁盘,文件
操作系统管理CPU,引出多进程,管理CPU,就要先使用CPU
CPU工作原理:程序存放在内存中,设置一个地址(假设为50),CPU发出取指指令,先前假设存放在内存中50,内存中50这条指令传回CPU,CPU得到指令,解释执行,CPU会自动取出下一条,继续解释执行
CPU只要给PC设置一个初始值,就会不断地自动取指执行
管理CPU最直观的方法,设好PC的初值,把PC 的初值设为程序的开始地址
IO指令非常慢,要移动磁臂,是机械操作,计算指令快,都是电路,这就引出了CPU的利用率,若每隔几条计算指令就有一条IO指令,CPU就要等待(不可以跳过,可能后续指令要用IO输入的数据),这样CPU效率就不高
通常的办法是设置PC,进行切换,先切出去,过会儿再切回来,但是要记录信息,程序执行到哪里,执行的样子,这些都放在PCB中,如同在看书时,有人敲门,起身开完门后,回来看书不可能再从头开始,脑中肯定也还有印象
这就是并发:同时出发,交替执行。多个程序都放在内存中,一个CPU上交替执行多个程序
操作系统之CPU管理的直观想法的更多相关文章
- 操作系统-CPU管理的直观想法
1. 管理CPU,先要使用CPU 管理CPU的最直观方法 2. 提出问题 有IO指令执行的特别慢,当cpu执行计算指令很快,遇到IO指令cpu进行等待,利用率不高. 使用多道程序.交替执行,这样cpu ...
- 操作系统学习笔记4 | CPU管理 && 多进程图像
操作系统的核心功能就是管理计算机硬件,而CPU就是计算机中最核心的硬件.而通过学习笔记3的简史回顾,操作系统通过多进程图像实现对CPU的管理.所以多进程图像是操作系统的核心图像. 参考资料: 课程:哈 ...
- 系统内存和CPU管理、监控
本博文的主要内容有 .系统内存管理.监控:vmstat和free -mt .系统CPU管理.监控:sar -u.mpstat.uptime linux系统内存和CPU是在系统运行的过程中不断消耗的资源 ...
- Thread.Sleep(0)的意义 操作系统中CPU的竞争策略
在线程的学习中遇到的 不太明白就搜了一下 有一篇觉得写得很好的分享一下 转载:http://www.360doc.com/content/12/1220/07/1054746_255212714.s ...
- 操作系统切换CPU的方式
操作系统切换CPU的方式 1 IO等待切换. 2 时间轮询切换,也就是如果没有IO等待的情况下,就会有时间轮询切换,不让CPU一直处理一个任务 CPU的处理速度是纳秒级别的,所有我们可以同时听歌, ...
- 批量ssh登录,获取操作系统、CPU、内存、硬盘信息<shell>
说明:该脚本读取machine.txt文件中的机器名,然后批量ssh登录,获取每台机器的操作系统,CPU,内存,硬盘等信息. 使用方法:将文件保存为sh,chmod +x filename 为该sh文 ...
- 操作系统管理CPU的直观想法
CPU的工作原理 要想管理CPU,就要先学会如何使用CPU.我们先从一个程序的执行来看看CPU是如何工作的. void main(){ int i , sum; ; i < ; i++){ su ...
- 操作系统 | 结合 CPU 理解一行 Java 代码是怎么执行的
根据冯·诺依曼思想,计算机采用二进制作为数制基础,必须包含:运算器.控制器.存储设备,以及输入输出设备,如下图所示. 我们先来分析 CPU 的工作原理,现代 CPU 芯片中大都集成了,控制单元,运算单 ...
- 操作系统之IO管理
IO系统结构 设备的分类 按数据组织分 块设备: 信息的存取总是以数据块为单位. 它属于有结构设备,如磁盘等. 磁盘设备的基本特征是传输速率较高,以及可寻址,即对它可随机地读/写任一块. 字符设备: ...
随机推荐
- linux下json工具jq
1.查看json文件 [root@VM-1-10-11 f46c19f56252a74a46fd30026001e62cc5ecadd04bc9a80c47f6fd5f9dc0586b]# pwd / ...
- 使用Flash Media Server(FMS)录制mp4格式的视频
最近在做一个有关视频直播和点播的项目,客户的一个需求就是可以控制对直播流的录制,直播的实现采用的是Adobe的Flash Media Server,具体方式就是:视频采集端采集视频并编码->rt ...
- tkinter绑定鼠标滚轮滚动事件 canvas.bind("<MouseWheel>", processWheel) 失效
其实,不同系统不一样,我的是Ubuntu 所以是<Button-4> <Button-5> 见下: 来自:https://stackoverflow.com/questio ...
- Memory Controller
1.S3C6410 地址空间 For memory at the table details 2. SDRAM图解 3. SDRAM 芯片容量计算: L_BANK 数目 * 一个 L_BANK 中的单 ...
- video 播放本地视屏
var file = document.getElementById('file_video').files[0]; var url = URL.createObjectURL(file); docu ...
- VSC KeyNote
[VSC KeyNote] 1.前后跳转. Alt + LeftArrow, Alt + RightArrow 2.缩进问题. vsc默认缩进为4,但js代码里缩进依旧是2. 因为vscode默认启用 ...
- oracle取某字符串字段的后4位
参考 https://zhidao.baidu.com/question/2142799026528780468.html select substr('str1234', -4) from dual
- windows环境下搭建kafka
注意:请确保本地Java环境变量配置成功 1.安装Zookeeper Kafka的运行依赖于Zookeeper,所以在运行Kafka之前我们需要安装并运行Zookeeper 1.1 下载安装文件: h ...
- 第二章 向量(d3)有序向量:Fibonacci查找
- Shell教程 之流程控制
1. if else 1.1 if if语句语法格式: if condition then command1 command2 ... commandN fi 写成一行(适用于终端命令提示符): if ...