
操作系统
夏天的技术博客
这个作者很懒,什么都没留下…
展开
-
浅谈计算机中的存储模型(一)存储体系
前言:最近研究了下操作系统中存储方面的知识,个人感觉学这部分的知识应该首先在脑海中抽象出存储体系,因为无论磁盘,物理内存还是虚拟内存都是互相有联系的,抽象出模型有助于我们的理解和记忆。接着需要哪部分知识或再次深入哪部分知识,从体系图中找。 建议不要在这块知识拉长战线,看了前面忘后面。 熟悉这部分知识后,个人感觉是豁然开朗计算机存储体系图这是个人总结出来的,就以它为目录吧。希望看完的朋友能有原创 2015-10-09 01:12:57 · 4030 阅读 · 3 评论 -
浅谈计算机中的存储模型(二)物理内存
接上一篇文章浅谈计算机中的存储模型(一)存储体系 这篇主要介绍物理内存目录物理内存 物理内存管理结构 位图空闲区/空闲区链表 内存分配算法 首次适配下次适配最佳适配最差适配 内存回收算法 内存回收的四种情况内存碎片问题 内碎片外碎片紧缩技术 伙伴算法 物理内存 物理内存其实就是我们机器的实际内存大小,比如我的笔记本电脑内存是4G。我们都知道程序是要原创 2015-10-09 03:39:40 · 2546 阅读 · 0 评论 -
浅谈计算机中的存储模型(三)虚拟存储器
接着前两篇文章 浅谈计算机中的存储模型(一)存储体系 浅谈计算机中的存储模型(二)物理内存 这篇主要介绍虚拟内存目录虚拟存储器 页式管理 页表 页表项 单一页表多级页表倒排页表 MMU快表TLB页错误/缺页异常页面置换算法 OPT FIFO第二次机会时钟算法 LRU老化算法NRU段式管理段/页式管理 内存映射和写时复制 这里先补充下地址原创 2015-10-09 14:22:28 · 3181 阅读 · 0 评论 -
进程的用户栈和内核栈
进程是程序的一次执行过程。用剧本和演出来类比,程序相当于剧本,而进程则相当于剧本的一次演出,舞台、灯光则相当于进程的运行环境。进程的堆栈每个进程都有自己的堆栈,内核在创建一个新的进程时,在创建进程控制块task_struct的同时,也为进程创建自己堆栈。一个进程 有2个堆栈,用户堆栈和系统堆栈;用户堆栈的空间指向用户地址空间,内核堆栈的空间指向内核地址空间。当进程在用户态运行时,C转载 2015-10-12 17:08:02 · 6657 阅读 · 0 评论 -
浅谈计算机中的存储模型(四)磁盘
最后一片文章简单聊聊磁盘相关知识 前几篇文章 浅谈计算机中的存储模型(一)存储体系 浅谈计算机中的存储模型(二)物理内存 浅谈计算机中的存储模型(三)虚拟存储器目录磁盘 磁盘结构磁盘存取磁盘调度 磁盘调度算法 FCFSSSTFSCAN磁盘缓冲和预读 磁盘 磁盘是计算机物理存储媒介,一般我们的程序在未执行前都是保存在磁盘上 。因为磁盘读取速度慢,所原创 2015-10-09 20:46:13 · 4305 阅读 · 2 评论 -
实现一个 O(1) 查找的 LRU Cache
前几天百度面试,当时让实现一个 LRU Cache,要求 O(1) 完成查找。后来发现这个也可以用在自己简易的 key-value 数据库项目中。简单来说 LRU 是内存管理的一种算法,淘汰最近不用的页。O(1) 时间完成查找,那除了 hash 别无选择。LRU 用双向链表实现即可。数据结构选择好了,查找我们用 hash 通过 key 得到链表节点的位置,然后更新 LRU 链表即可。简单说下自己的项原创 2016-09-01 19:13:19 · 3085 阅读 · 1 评论