随笔分类 -  操作系统

摘要:http://www.cnblogs.com/mahaikai/p/6025512.html 在多任务操作系统中,每个进程都运行在属于自己的内存沙盘中。这个沙盘就是虚拟地址空间(Virtual Address Space),在32位模式下它是一个4GB的内存地址块。在Linux系统中, 内核进程和用 阅读全文
posted @ 2017-05-19 23:12 zzfx 阅读(1933) 评论(0) 推荐(0) 编辑
摘要:http://www.cnblogs.com/huxiao-tee/p/4660352.html linux内核使用vm_area_struct结构来表示一个独立的虚拟内存区域,由于每个不同质的虚拟内存区域功能和内部机制都不同,因此一个进程使用多个vm_area_struct结构来分别表示不同类型的 阅读全文
posted @ 2017-05-19 16:52 zzfx 阅读(3893) 评论(1) 推荐(1) 编辑
摘要:要素: 1)CPU访问寻址地址空间; 2)内存不足以容纳所有进程数据; 3)MMU将进程数据分割,保留当前使用数据。 http://baike.baidu.com/link?url=KHyp37Ysix_jfIdUEisqrjgJVPPS2yBvqdvLAgns3cevaKGgjLXE5zyjj7A 阅读全文
posted @ 2017-05-19 11:18 zzfx 阅读(357) 评论(0) 推荐(0) 编辑
摘要:http://www.cnblogs.com/lcw/p/3351668.html 每个进程各自有不同的用户地址空间,任何一个进程的全局变量在另一个进程中都看不到,所以进程之间要交换数据必须通过内核,在内核中开辟一块缓冲区,进程1 把数据从用户空间拷到内核缓冲区,进程2再从内核缓冲区把数据读走,内核 阅读全文
posted @ 2017-03-16 15:04 zzfx 阅读(195) 评论(0) 推荐(0) 编辑
摘要:https://zhidao.baidu.com/question/355510072.html数据结构就是计算机存储、组织数据的方式,它是人们为了实现各种各样的算法和程序而设计出来的,具有一定性质或规律。比如栈可以用来实现递归算法的非递归化,图可以用来处理网络问题。算法你可以理解为用程序解决实际问 阅读全文
posted @ 2017-02-10 17:36 zzfx 阅读(4917) 评论(0) 推荐(0) 编辑
摘要:http://www.cnblogs.com/snake-hand/p/3148191.html 我们从图上可以看出,两个线程之间的栈是独立的,其他是共享的,所以,在操作共享区域的时候才有可能出现同步需要,操作栈不需要同步。 最后我们知道,pthread也提供了私有堆机制,关于私有堆机制在以后说明。 阅读全文
posted @ 2017-02-08 11:07 zzfx 阅读(783) 评论(0) 推荐(0) 编辑
摘要:http://blog.csdn.net/lujiandong1/article/details/44726373 1、在用户空间中实现线程 (1)特点:把整个线程包放在用户空间,内核对线程包一无所知。从内核角度考虑,就是按正常的方式管理,即单线程进程(存在运行时系统) (2)优点: 1、用户级线程 阅读全文
posted @ 2017-02-08 11:06 zzfx 阅读(924) 评论(0) 推荐(0) 编辑
摘要:http://www.cnblogs.com/wanpengcoder/p/5303444.html 1. 物理内存: 物理内存指的是插在计算机主板内存槽上的实际物理内存,CPU可以直接进行寻址; 物理内存的容量是固定的,但是寻址空间却取决于cpu地址线条数,如32位机,则寻址空间为2^32=4G, 阅读全文
posted @ 2017-02-06 23:40 zzfx 阅读(774) 评论(0) 推荐(0) 编辑
摘要:http://blog.csdn.net/jjw97_5/article/details/39340261 MMU是个硬件,每当cpu访问一个地址的时候,MMU从内存里面查table,把cpu想访问的那个虚拟地址转换成物理地址。因为MMU每次查table都要读内存,比较慢,就在内存和MMU之间弄了个 阅读全文
posted @ 2017-02-06 19:32 zzfx 阅读(1504) 评论(0) 推荐(0) 编辑
摘要:http://blog.csdn.net/q_l_s/article/details/52597330 一、进程试探 编程实现一个简单的shell程序 点击(此处)折叠或打开 #include<stdio.h> #include<stdlib.h> #include<unistd.h> #inclu 阅读全文
posted @ 2016-11-24 23:52 zzfx 阅读(1066) 评论(0) 推荐(0) 编辑