前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >计算机操作系统概念初解

计算机操作系统概念初解

作者头像
用户1687088
发布2018-05-07 16:39:49
7990
发布2018-05-07 16:39:49
举报

一、存储系统

在计算机系统中存储层次可分为,处理器上的寄存器、高速缓冲存储器、主存储器(内存)、辅助存储器(外存)四级。高速缓冲存储器用来改善主存储器与中央处理器的速度匹配问题。辅助存储器用于扩大存储空间。

1、存储设计存在的三个问题:

  • 存储容量:这个需求永无止境
  • 读写速度:需要能够匹配当前的处理器
  • 经济成本:要选择最合适的成本,进行一定的优化。

2、存储保护 存储保护有两个方面:

  • 界地址寄存器--用于给定地址上限与下限,规定某个程序占用不得超出界限、或者是基键与长度键,不知道的自己去查
  • 存储键--进程调入内存时,设置存储键,每次调用之前查询存储键,给定与进程存储键键值和地址键值一致

3、中断与异常机制 (1)该机制的特点:

  • 中断随机
  • 中断可恢复
  • 中断自动处理 (2)内容

分类的内容,图片没处理好,不处理了

其中中断与正在执行的指令无关,可以采取中断屏蔽; 但是异常与正在执行的指令有关,不可以屏蔽。

总的来说可以分为五类中断: I/O 中断 时钟中断 硬件故障中断 程序性中断(貌似考这个的概率比较大,因为这个最搞不清) 系统调用中断 (PS:系统调用:是OS为用户程序设置的唯一的用户程序获取OS服务的途径 目态-->管态)

4、I/O技术 I/O控制方式有三种:通道控制、DMA控制、缓冲技术 目前最广泛采用的基本是缓冲技术,其中缓冲技术又分为三种:单缓冲区、多缓冲区、缓冲池

5、时钟 时钟是微机上所有的软件获得时间的来源。一般分为硬件时钟和软件时钟。按照用途可分为绝对时钟和相对时钟。

二、进程线程模型

1、并发环境与多道程序设计

  • 程序的顺序执行 顺序环境:独占资源,不受外界的影响,无交互
  • 多道程序设计 独立性、随机性、资源共享性
  • 程序的并发执行 (1)执行期间相互制约 (2)程序与计算不再一一对应 (3)并发执行结果不可再现(这一点出题最多)

2、进程(正在执行的程序-系统进程、用户进程)

  • 特征 并发性、动态性、独立性、交往性、异步性
  • 进程基本状态模型: 三进程状态 五进程状态 七进程状态
  • 三种基本状态: 就绪状态:除了CPU之外一应俱全(多的时候就形成了就绪队列) 运行状态:获得了CPU的使用权 等待状态:正在进行的进程因为意外暂停退出CPU的使用
  • 扩展状态: 创建状态:未进入就绪队列 结束状态:从系统队列移除但是还没有撤销 挂起状态:把一个进程从内存移到外存中 激活状态:从外存移动到内存
  • 状态转换

举个栗子:CPU是个好姑娘(唔,花魁吧,是这个叫法吧),进了内存(chun楼)的都是进程(为了花魁而来的文人才子),那就不管你是在哪儿,进来了就算是进程了。然后,如果有多个花魁,那就是多道操作系统了。可以容几个进程共同使用CPU嘛,如果只有一个,那就只能同时一个进程,所谓异步并发,其实就是,这个进程在比如0-10秒用一下CPU,10-20秒就归另外一位进程使用CPU,反正CPU快得很,一个个的应付都是小意思。用户(看客??)根本看不出来多个进程用一个CPU,在他们看来那就是所有的进程都有CPU可用,就绪状态,就等于是已经排好队了,啥都有了,就等着进姑娘的房间脱裤子了。运行状态,那就不说了,大家都懂~~~等待状态,那就是突然家里打电话过来了,maybe查房的来了。需要时间出去房间应付下,然后回来就会继续排队,毕竟CPU你不用,人家还要用的呢,就差不多是这样了。其他自己去脑补吧。

(此处并非有任何别的除了打比方之外的想法,不喜勿喷,想喷出门请左拐,掉坑里去吧)

转化图如下:切记,只有就绪状态和执行状态可以相互转化,就是上面那个 轮流使用CPU的是时候

  • 进程控制块(PCB) 进程控制块中的内容是:调度信息、现场信息 进程由程序、数据、PCB组成 其中PCB是灵魂,程序、数据是肉体
  • PCB表的组织方式
    • 线性:直接找,一个个找,没有额外的开销,只是速度慢点
    • 索引:建个表,慢慢找,有额外的开销,但是速度挺快的
    • 链接:按照相同的状态的进程分块,一个个找。
  • 进程控制 创建、撤销、完成,通过原语完成
  • fork()的使用 fork是在父进程下开一个子进程的函数。执行一次,返回两个结果,一个是父进程返回的子进程的PID 也就是子进程的代号。还有一个是子进程返回的0

fork()后的代码是两个进程共有的,会执行两次后面的代码。结果返回一个child:x=2 parent:x=0

© 著作权归作者所有

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2017-06-05,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 工科狗和生物喵 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、存储系统
  • 二、进程线程模型
相关产品与服务
对象存储
对象存储(Cloud Object Storage,COS)是由腾讯云推出的无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。腾讯云 COS 的存储桶空间无容量上限,无需分区管理,适用于 CDN 数据分发、数据万象处理或大数据计算与分析的数据湖等多种场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档