操作系统基础
文章平均质量分 81
操作系统的基本概念理解
呋喃吖
编程使我快乐
展开
-
【操作系统基础】页表 快表 多级页表
文章目录页表页面的大小页表特性PTBR--寄存器快表TLB 命中率基于页表的保护与共享多级页表页表为什么说分页的逻辑地址是一维的地址;从下图我们可以看出,把一个程序分为等大的页面(这里每个页面大小假设4bytes),每一个页面的里的指令(假设每条指令大小为1bytes)都会有相对应的逻辑地址,都是从0开始算起的;页表记录的主要信息就是:页框号和页面号的映射关系,页框号也就是物理地址,页面号也是逻辑地址的一部分;上面的例子中:把程序分为了3个页面的大小,放入到内存中,其中#0页面放入到了f原创 2022-05-05 15:16:09 · 8558 阅读 · 9 评论 -
【操作系统基础】分段和分页
前言分段和分页的出现:就是为了解决以前操作系统设计管理内存方案带来的问题而设计出的一种新管理内存的方案;大概意思就是:一个进程不是完完整整的放入到连续的内存区域,而是把进程分段放入内存,因为把进程连续的放入内存带来的问题就是碎片问题很严重,所以分段放入内存就可以有效的缓解碎片问题;但是将进程分段放入内存,也会带来一个新的问题,这些分段的数据被放到哪里了?此时就需要操作系统维护一张表来记录了,这时候操作系统又会增加了新的负担,把进程分片,放入内存,计算内存哪儿有空位,计算表的数据等等等;但是原创 2022-04-29 08:06:39 · 5616 阅读 · 5 评论 -
【操作系统基础】OS管理内存的前置知识
初始内存(main memory)内存也是叫主存;内存是由一大段的字节序组成的,最关键的一点是这里每一个字节都有一个自己的地址;在计算机中,CPU是从内存的PC寄存器中获取指令地址来执行程序的;我们对内存的操作无非就是写入和读取,都是对内存的操作,如何操作内存呢?那就是操作它的地址,比如写入数据到内存,只需要找到你要写入内存的地址就可以达成目标;对于典型的指令执行周期来说:就是三部曲:CPU取指令form memory,CPU译码指令并且需要一些内存而外数据帮助译码;CPU执行执行,结果返回给内原创 2022-04-28 08:28:17 · 431 阅读 · 2 评论 -
【操作系统基础】信号量的基本理解
文章目录1. 信号量2. 信号量的实现3. 二值信号量4. 一般信号量1. 信号量对于互斥锁,它解决的时并发进程竞争关系的问题,也就是为了解决临界区问题而设计出来的一种为了保持同步的工具;而信号量比互斥锁更加强大,可以解决很多并发进程同步的问题;一个信号量S是一个整数,除了初始化以外,信号量仅仅只能有两个操作:P和V操作;PV操作就是测试和增加的意思;2. 信号量的实现P操作主要是检测信号量S是否大于0,假如大于0,那么久使得信号量减1,假如小于等于0,那么就忙式等待,做空循环;V操作原创 2022-04-12 09:06:22 · 3624 阅读 · 5 评论 -
【操作系统基础】临界区问题 和 和原子操作的理解 和 互斥锁的实现和理解
临界区问题每个并发的进程都有一个代码段,被叫做临界区,这个代码段也是临界区可能会改变并发进程的公告资源数据,更新数据,写入文件等操作;在并发的进程中,当有一个进程正在执行临界区的代码时候,其他并发的进程是不可以被允许去执行临界区的代码的,换句话说:两个进程是不可以不可能同时执行临界区的内容;总的来说:临界区问题就是设计一种协议:这种协议它可以保证进程之间相互协作;进程进入临界区协议当我们一个进程需要进入临界区时候,需要获取进入临界区的许可,当我们离开临界区时候,需要归还临界区的许可;原创 2022-04-11 19:54:31 · 4171 阅读 · 4 评论 -
【操作系统基础】对文件系统的基础理解
文章目录文件系统概念文件概念文件的属性文件类型文件目录文件系统概念文件系统对于大多数用户来说,它是一个操作系统非常可视化的一部分;这里有个关键的信息,文件系统时操作系统的一部分,也就是说,文件系统其实就是软件层的虚拟东西;文件系统给计算机系统的所有使用者和操作系统的数据和程序提供了一个在线存储和访问的机制的东西;文件系统是在设备上面的,比如磁盘,SSDs上,文件系统是不会放到内存中的,因为断点了,那文件系统就会没有了;总结:文件系统包含了两个不同的部分:1.文件的集合,每个文件都存储相关的原创 2022-04-10 17:17:00 · 1265 阅读 · 1 评论 -
【操作系统基础】磁盘结构的基本理解
文章目录磁盘结构磁盘格式化进程请求磁盘IO并发进程请求磁盘IO磁盘结构主轴:磁盘片是绕着主轴旋转的磁头:用于读写磁盘片上面的数据磁盘片:存放数据的我们还发现,磁头不止一个,每个磁头都对应这一个盘面。磁盘格式化磁盘格式化:就是给磁盘重新分配一个文件系统,文件系统是os的概念;一般不同的os使用的文件系统是不一样的;这就像每个人的房子不一样,装修不一样的风格;进程请求磁盘IO当我们进程无论什么时候从磁盘中读写数据时候,它都需要向操作系统发出一个系统调用。进程请求磁原创 2022-04-10 16:29:23 · 1170 阅读 · 0 评论 -
【操作系统基础】进程异步同步的理解
文章目录一 并发进程之间的关系1 独立关系2 交互关系二 并发进程的竞争关系理解三 异步进程引发的错误四 同步的概念五 总结一 并发进程之间的关系1 独立关系并发的进程之间假如没有数据交换的话,那么这并发的进程就是相互独立的,谁也不影响谁。比如:我们的QQ进程和微信进程,就是典型的独立关系,QQ发的消息,微信并不会收到!2 交互关系并发进程之间假如有数据交换,或者共享数据的话,那么就是属于交互关系!比如:我们常见的银行服务器,有一个接受数据的进程,一个处理数据的进程;处理数据的进程需原创 2021-10-28 22:47:40 · 922 阅读 · 0 评论 -
【操作系统基础】线程的理解 多线程模型 fork函数简单认识
文章目录创建子进程函数--fork( )线程的理解一个小例子理解-----线程创建子进程函数–fork( )要了解线程我们先来了解fork()函数:fork() 函数的功能是在当前的进程创建一个子进程;❓那fork()函数的执行机制是什么?执行fork函数,会在内存中创建一份和父进程完全一样的子进程出来;该子进程和父进程是两个完全独立的空间;用进程编号pid来区分父子进程;父进程fork()之后的代码会被并发的执行两遍,是因为子进程和父进程在交替执行fork()之后代码的原因;fork()原创 2021-10-25 22:06:20 · 1237 阅读 · 4 评论 -
【操作系统基础】进程切换 进程调度 PCB 进程队列 中断过程
文章目录并发的进程切换中断技术中断源中断的过程特权指令和非特权指令进程调度并发的进程切换要了解并发进程的切换,首先要清楚知道什么是并发的进程!!并发的进程最主要的特点就是走走停停的状态,从运行的开始到结束不是一步运行到底的,是走走,然后cup被调度走就停停,等到需要进程继续执行的时候,又可以被分配到cpu资源,然后走走;如此反复,知道进程运行结束!(单cpu的讨论)如上图的两个进程process1和process2,虚线部分表示进程停止,实线部分表示进程运行,当process1停的时候,pro原创 2021-10-21 20:37:23 · 3985 阅读 · 7 评论 -
【操作系统基础】进程 程序 并发 并行 进程状态图 的理解
文章目录程序vs进程并发与并行进程的状态进程何时离开CPU进程的状态转化图程序vs进程❓什么是程序?程序的英文解释:中文翻译:程序是一个被动的实体,比如一个文件包含了一系列的指令存在磁盘中(通常叫为可执行程序)。理解:program是程序;而process是进程;所以从英文单词上看到两者的不同;passive entity是被动的实体;❓如何理解这个被动的实体?比如一个QQ:它就是一个可执行的程序,并不是进程,而且它不会自动运行,只要你不点击它,都不会自动运行,只有自己点击才会运行,这就原创 2021-10-18 21:33:56 · 2121 阅读 · 4 评论