![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
操作系统
文章平均质量分 51
-景清-
清澈光明!
展开
-
内存的基础知识
内存的基础知识 什么是内存?内存的作业? 内存是用于存放数据的硬件。程序在执行前需要先放到内存中才能被CPU处理 如何区分各个程序的数据存放的位置? 给内存的存储单元进行编号。 内存地址:每个内存地址对应一个存储单元 存储单元的大小:根据计算机的具体情况进行判断,按字节(8个二进制位),字(16个) 逻辑地址(相对地址) 逻辑地址:CPU所生成的地址。逻辑地址是内部和编程使用的、并不唯一 物理地址:加载到内存地址寄存器中的地址,内存单元的真正地址 编译:由编译程序将用户的源代码编译成为若干个目标模块 链接原创 2021-04-22 01:53:17 · 302 阅读 · 0 评论 -
上课笔记2
上课笔记 存储体系 存储器访问的局部性原理 时间上的局部性:将要用的可能就是现在在用的 空间上的局部性:将来要用的可能就在现在的附近 访问模式 取指令 堆栈访问 数据访问 存储器的存储结构(2——8规则): 寄存器(M) Cache(G) 主存(T) 辅存 是依靠存储器访问的局部性实现的 存储管理的功能 操作系统的存储管理功能针对的是内存 外存属于设备 Cache对于软件不可见 内存的管理功能 内存的分配和回收 地址变换和重定位 内存保护 内存扩充 相应的策略: 调入策略 用户在什么时原创 2021-04-19 13:24:23 · 56 阅读 · 0 评论 -
上课笔记1
上课笔记 进程间通信 是指在不同的进程之间传递或者交换数据 分类 低级通信:进程之间控制信息的交换,一般只传输一个或者几个字节,达到同步和互斥的目的 高级通信:操作系统提供的一组接口 高级通信 共享内存 在物理内存中划出一块共享存储区,相互之间通信的进程可以将共享存储区映射到各自的地址空间,通过读或者写共享存储区实现通信 解决的问题 共享的读写互斥问题 怎样提供共享内存 操作系统一般只提供共享的内存空间 Linux三种内存共享机制(了解) mmap() 系统调用mmap()函数——将文件映射到一个原创 2021-04-19 12:26:12 · 69 阅读 · 0 评论 -
哲学家进餐问题
哲学家进餐问题 注意:由于每个进程都存在需要持有两个进程的原因,故而存在死锁的问题 问题描述 一张圆桌上坐着5名哲学家,每两个哲学家之间的桌上摆一根筷子,桌子的中间是一碗米饭。哲学家们倾注毕生的精力用于思考和进餐,哲学家在思考时,并不影响他人。只有当哲学家饥饿时,才试图拿起左、右两根筷子(一根一根地拿起)。如果筷子已在他人手上,则需等待。饥饿的哲学家只有同时拿起两根筷子才可以开始进餐,当进餐完毕后,放下筷子继续思考。 关系分析,系统中有5个哲学家,5个哲学家对于与其附近的哲学家中间的筷子的访问是互斥的原创 2021-04-16 16:46:49 · 141 阅读 · 0 评论