会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
HermioneGranger
博客园
首页
新随笔
联系
订阅
管理
上一页
1
2
3
4
下一页
2020年11月2日
Life is strange~ep2
摘要: rebel n.不守规矩者 smart ass n.自作聪明的家伙 dork n.呆子 weed n.大麻 I could feel rain stinging my face n.雨水刺在脸上 shower supplies n.淋浴用品 Victoria did her usual suck-u
阅读全文
posted @ 2020-11-02 21:53 HermioneGranger
阅读(87)
评论(0)
推荐(0)
2020年10月28日
OS-李治军-L25-内存换出
摘要: #内存换出 有换入就应该有换出!等价交换! 必须要选择一个页换出,选择哪一页淘汰emm? 下面介绍淘汰算法。 一、FIFO 先来的先走。 二、MIN 内存当中,将来最久没有使用过的page滚蛋。 效果很好,但是我们做不到,我们不知道将来会有什么东西过来。 三、LRU 用过去的历史预测我来,选最近最长
阅读全文
posted @ 2020-10-28 15:33 HermioneGranger
阅读(109)
评论(0)
推荐(0)
OS-李治军-L24-内存换入与请求调页
摘要: #内存换入与请求调页 为了实现虚拟内存,就应该有换入换出。 用户可以随意使用该内存,如char *p, p=3G,实际上就是使用该地址,而后续该内存如何映射到物理内存是对用户透明的。 如果逻辑地址空间比物理地址空间更大怎么办?这就引入了换入。 先把东西放到disk上,要用到的时候再放到内存当中来。
阅读全文
posted @ 2020-10-28 14:58 HermioneGranger
阅读(122)
评论(0)
推荐(0)
OS-李治军-L23-段页结合的实际内存管理
摘要: #段页结合的实际内存管理 底层希望段管理,用户希望页管理...如何结合呢? 这就引出了虚拟内存的概念。 我们设置一种地址空间,称之为虚拟内存,向上,可以为用户提供段;向下,将段映射到物理帧上。 对用户来说,是段的使用,对物理内存来说,是页的使用。 寻址: 用户给出CS: IP,先查段表,访问某个段内
阅读全文
posted @ 2020-10-28 13:33 HermioneGranger
阅读(158)
评论(0)
推荐(0)
OS-李治军-L22-多级页表与快表
摘要: #多级页表与快表 分页会有问题,为了提高利用率,页应该小吧,但这样页表项就会增加==,到后面就会膨胀得很厉害。例如,4k的页,4G的物理,那么就会有4G/4k=4M个页表项!。不仅如此,每个进程的pcb都要保存一份页表。。。 但实际上大部分逻辑地址根本不会用到,能不能把页表压缩? 第一种尝试:只存放
阅读全文
posted @ 2020-10-28 12:44 HermioneGranger
阅读(278)
评论(0)
推荐(0)
2020年10月26日
OS-李治军-L21-内存分区与分页
摘要: #内存分区与分页 如何在内存中找出一段空闲的区域?如何分割内存? 简单点,固定分区,内存等分成K个分区。但是有问题,每个程序需要的段大小都不一样,这样造成浪费。 所以,一般采用可变分区,其核心结构是表,记录空闲的内存与已经分配的内存。 如果某次申请的时候,有两个分区都满足要求,那么应该pick谁?下
阅读全文
posted @ 2020-10-26 13:16 HermioneGranger
阅读(126)
评论(0)
推荐(0)
OS-李治军-L20-内存使用与分段
摘要: #内存使用与分段 计算机如何工作?从内存中取址,cpu执行指令,从内存中取址,cpu执行指令...... 内存使用:将程序放在内存当中,并令程序执行起来。但是让程序进入内存时,会发生一些问题,汇编指令的调转地址与物理地址必须一致,如果有两段汇编都要将程序放到0-40的地方,怎么办?这就会发生一些矛盾
阅读全文
posted @ 2020-10-26 09:24 HermioneGranger
阅读(104)
评论(0)
推荐(0)
2020年10月25日
OS-李治军-L19-死锁处理
摘要: #死锁处理 一个死锁的栗子,来源于用户对信号量的错误使用,形成一种信号量需求环路,相互依赖,导致谁也无法向下进行。更坏的情况是,锁住的资源越来越多,导致最后cpu不工作了。 (这里应该是先使用P(mutex),再P(empty))先使用了mutex,然后由于empty不够则producer被阻塞,另
阅读全文
posted @ 2020-10-25 23:41 HermioneGranger
阅读(101)
评论(0)
推荐(0)
OS-李治军-L18-信号量的代码实现
摘要: #信号量的代码实现 申请信号量,这个在内核中实现,因为信号量中具有pcb。 每个信号量具有唯一的标识,内核根据标识在信号量表中查询信号量。 这里用开关中断来保证原子性。 具体逻辑是,在做相关操作之前,调用wait函数,判断当前信号量的值,判断自己是否要进入等待队列,如果要就schedule。 如果不
阅读全文
posted @ 2020-10-25 18:43 HermioneGranger
阅读(196)
评论(0)
推荐(0)
OS-李治军-L17-信号量临界区保护
摘要: #信号量临界区保护 共同修改一个变量,可能会发生问题。 这种情况称为Race Condition,不是编程的问题,是系统调度的问题。 解决问题的直观想法:给信号量上锁。一个程序在操作信号量的时候,确保信号量不能被别人修改。 我们定义临界区:一次只允许一个进程进入的该进程的那一段代码。其他地方叫剩余区
阅读全文
posted @ 2020-10-25 17:31 HermioneGranger
阅读(226)
评论(0)
推荐(0)
上一页
1
2
3
4
下一页
公告