- 博客(17)
- 收藏
- 关注
原创 操作系统9-进程和系统调度(II)
进程的创建 操作系统通常是提供库来创建进程。一般有两种模式去创建进程。在Unix社区进程创建有2个函数:fork(2c)和exec(2c).在Unix大部分进程创建都是通过shell。shell是用户和操作系统互动的中间点。当一个命令(不是shell的一部分)输入,shell会产生(fork)一个进程。 fork(2c)是unix系统调用(在libC库),
2015-11-15 13:59:52 340
原创 操作系统8-进程和系统调度(I)
什么叫进程 一个进程就是程序运行的实体。程序运行实体需要他自己的资源:栈,堆,等。在一些操作系统进程叫任务(tasks).在程序执行当中,进程是有多种状态的。一个进程可以有它的优先度。一个进程有他得地址空间,例如windows给进程4gb空间(划分给不同的用户)。 当程序执行,一个进程会由以下段(segments): 程序代码(代码段)数据段栈
2015-11-15 13:49:52 554
原创 操作系统7- shell
用户体验:命令执行(the shell) 一旦操作系统加载之后,他就开始等待命令。命令可以通过CLI(CommandLineInterface)或者GUI(GraphicalUserInterface)输入。 命令输入会进入一个命令的解析器(在Unix世界这个叫做shell)。Shell用自己的规则解析命令之后执行命令。 一个经典she
2015-11-13 17:10:52 384
原创 操作系统6-系统调用和库
系统调用和库 你写代码时一般都用到一些库里的常用的函数,例如open(2c), close(2c)和printf(2c)。当编译时,编译器会标识一些找不到得符号(unresolved symbols)。这写符号会被解决在link的时候。 库在任何平台都是产生程序的基本成分。库有很多函数,可以通过这些函数来调用内核工作。当我们调用到这些函数,它们产生陷阱指令(TRAP)来
2015-10-28 16:51:38 386
原创 操作系统5-设备的驱动
设备的驱动 以前驱动是创建到内核里。即插即用(Plugand Play)改变了这一做法。现在设备的驱动提供一些接口给系统调用,或者给用户程序调用。通常操作系统的生产商回提供这些驱动,但在一些小设备经常是第三方提供。 驱动一般是加载成操作系统的模块。当驱动加载时: 模块分配到内存里 资源检查添加中断到操作系统 在Unix大部分设备驱动允许设备用文
2015-10-28 16:48:13 335
原创 操作系统4-内存管理
因为多道程序(multiprogramming),现在的系统都执行虚拟内存系统. 内存是难管理的。当系统内核启动,会将内存分成每一小块,每一块叫页,页的大小根据每个系统结构不一样而不同。页面有他的数据结构,内核通过这个来管理内存。当进程产生会被分配到内存页。 按需分页(Demandpaging)和虚拟内存 初始化内存会把所有内存放到可用列表。当一个程
2015-10-28 11:31:17 335
原创 操作系统2-进程
一个进程在操作系统里代表一个工作,一个任务。操作系统有很多方式去处理进程。例如:批处理,交互式处理,所以操作系统需要一个任务调度(job scheduling). 一个经典进程处理的场景:一个命令行的执行。 设备管理收到键盘的输入 ->解析为命令 -> 发送到命令行接口-> 进程管理验证命令 ->进程管理发送结果到终端(设备管理)
2015-10-26 23:15:14 375
原创 操作系统3-内核
内核(kernel)就是程序和硬件之间的中间库。他的责任就是使硬件做事情。我们可以说内核就是操作系统。 内核提供以下的服务/功能: 1系统的初始化2进程间的通信(消息传递)3存储器管理4进程管理5文件系统管理 操作系统结构 操作系统结构可以分为3种:1单内核 单内核(Monolithic kernel),是个很大的进程。它的内部又能
2015-10-26 23:12:56 328
原创 操作系统1- 概述
操作系统的作用: 1.通过抽象隐藏机器的复杂性,向用户展示机器(电脑)的信息。 2.资源管理者,控制所有机器的各个部件。充分协调各个部件工作,发挥最大的效能。 3.资源共享,通过资源共享,充分地使用处理器,内存,硬盘和其他设备。 操作系统的功能特性:1、处理机管理,处理器管理的第一项工作是处理中断事件,处理器管理的第二项工作是处理器调度。2、存储管理
2015-10-26 16:40:25 562
原创 硬件-硬盘
近年来硬盘性能得到很大的发展。主要受传输速率,转速,寻道时间3个因素得到很大的提升。 容量(block)由磁头(Heads),柱面(磁道)(Cylinder),扇区(Sector)相乘。 硬盘接口的种类: IDEIDE,全称 Integrated Drive Electronics,即“电子集成驱动器”,俗称PATA并口。比较出名的接口ATA全称 Ad
2015-10-25 22:00:34 323
原创 硬件- I/O 与 总线
Input/Output 输入输出设备 设备是复杂的。有很多的方法使设备与CPU一起工作。还有很多标准协议可以使他们与CPU更容易融合。所有设备都通过驱动(Driver)与内核交互。 I/O设备通过以下方式去CPU交互: 轮询(Polling)又称“程控输出入”(ProgrammedI/O)。轮询法的概念是,由CPU定时发出询问,依序询问每一个周边设备是否需要
2015-10-25 20:46:14 615
原创 硬件-内存2
缓存 缓存分3种:L1cache(一级缓存),L2cache(二级缓存)和L3cache(三级缓存) L1cache(一级缓存),CPU内核集成的缓存称为一级缓存,而外部的称为二级缓存。一级缓存中还分数据缓存(Data Cache,D-Cache)和指令缓存(Instruction Cache,I-Cache) L2cac
2015-10-25 19:21:23 275
原创 硬件-内存1
内存的插槽分别有:SIMM/DIMM/SODIMM SIMM(Single Inline Memory Module,单列直插内存模块) ,速度60ns,8bit和16bitSIMM使用30pin接口,32bit的则使用72pin接口 DIMM(Dual Inline Memory Module,双列直插内存模块) ,SDRAM DIMM为168Pin DIMM结构,DDR D
2015-10-25 17:01:15 341
原创 硬件-CPU3
CPU执行模式 现代系统提供不同指令模式:内核模式(Kernel mode)/用户模式(User mode). 内核模式操作的一种高特权模式,其中的程序代码能直接访问所有内存和硬件。用户模式I/O和内存指令受到保护,不能使用。 系统调用的API是开发者(用户模式)命令系统(内核模式)如果做事的切入点。而TRAP指令就是这个切入点。 TRAP指令,即陷阱指令是
2015-10-25 13:14:43 319
原创 硬件 - CPU2
ReducedInstruction SetComputing VSComplex Instruction SetComputing精简指令RISC VS复杂指令CISC RISC和CISC是CPU架构的设计原理。概况来说RISC的目标是减少指令的数量或者降低指令的复杂度。RISC的下游的编译器必须是更智能,更多转化才能产生相同的结果。RISC生产商倾向于无竞争去对抗大生产商(
2015-10-22 13:48:50 537
原创 硬件 - CPU(1)
硬件 作为一个开发者,你必须要了解硬件,因为硬件是你操作的基础。软件的运行要基于硬件而且还受到硬件的限制。 硬件分为: CPU内存缓存总线存储(硬盘) CPU CPU类型就是CPU的架构。CPU架构:一个指令集和数据如何一起工作。同一类型的CPU又有内频,外频的区分。 CPU类型:SparcX86
2015-10-22 13:45:53 272
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人