随笔分类 -  操作系统

摘要:信号机制的本质是操作系统向应用的单向通信。 阅读全文
posted @ 2017-12-07 14:37 zzfx 阅读(141) 评论(0) 推荐(0) 编辑
摘要:Architecture The foundation layer of Darwin and OS X is composed of several architectural components, as shown in Figure 3-3. Taken together, these co 阅读全文
posted @ 2017-12-04 18:58 zzfx 阅读(357) 评论(0) 推荐(0) 编辑
摘要:http://my.oschina.net/chenliang165/blog/125825. 最近同事的程序设计过程中用到了Linux的signal机制,从而引发了我对Linux中signal机制的思考。Signal机制在Linux中是一个非常常用的进程间通信机制,很多人在使用的时候不会考虑该机制 阅读全文
posted @ 2017-12-04 18:32 zzfx 阅读(1735) 评论(0) 推荐(0) 编辑
摘要:子进程和父进程都从调用fork函数的下一条语句开始执行 阅读全文
posted @ 2017-09-21 15:45 zzfx 阅读(904) 评论(0) 推荐(0) 编辑
摘要:http://blog.csdn.net/u012349696/article/details/50687462 编号为1 ~ 31的信号为传统UNIX支持的信号,是不可靠信号(非实时的),编号为32 ~ 63的信号是后来扩充的,称做可靠信号(实时信号)。不可靠信号和可靠信号的区别在于前者不支持排队 阅读全文
posted @ 2017-08-08 10:41 zzfx 阅读(284) 评论(0) 推荐(0) 编辑
摘要:http://blog.csdn.net/chen98765432101/article/details/54881652 概述 为了更加有效的管理存储器并且少出错,现代操作系统提供了一种对主存的抽象,叫做虚拟存储器。虚拟存储器是被应用程序所意识和使用的。也就是说,它是被抽象出来的,虚拟出来的主存。 阅读全文
posted @ 2017-08-03 18:42 zzfx 阅读(1101) 评论(0) 推荐(0) 编辑
摘要:http://blog.csdn.net/qq_26768741/article/details/54348586 阅读全文
posted @ 2017-05-25 00:05 zzfx 阅读(477) 评论(0) 推荐(0) 编辑
摘要:elf文件是一组结构体和数据的组合。 elf文件是一种文件格式,这种格式定义了进程加载器如何读取elf文件的内容。 elf文件的程序头或者segment对如何加载(读取)做了说明。 阅读全文
posted @ 2017-05-24 23:47 zzfx 阅读(278) 评论(0) 推荐(0) 编辑
摘要:程序加载的本质是:将可执行文件加载进内存,以供CPU调用执行。 原始加载: 在早期的计算机中,程序是直接运行在物理内存上的,程序在运行时访问的地址就是物理地址。 假设我们计算有128MB内存,程序A需要10MB,程序B需要100MB,程序C需要20MB。如果我们需要同时运行程序A和B,那么比较直接的 阅读全文
posted @ 2017-05-24 23:06 zzfx 阅读(509) 评论(0) 推荐(0) 编辑
摘要:http://www.jianshu.com/p/e1300e7a4c48 1. 虚拟内存 在早期的计算机中,程序是直接运行在物理内存上的,程序在运行时访问的地址就是物理地址。可是,当计算机中同时运行多个程序时,就会有很多问题。 假设我们计算有128MB内存,程序A需要10MB,程序B需要100MB 阅读全文
posted @ 2017-05-24 22:40 zzfx 阅读(328) 评论(0) 推荐(0) 编辑
摘要:lipo otool nm objdump readelf MachOView class-dump -H /Applications/Calculator.app -o /Users/apple/Desktop/calculate\ heads 阅读全文
posted @ 2017-05-24 17:44 zzfx 阅读(365) 评论(0) 推荐(0) 编辑
摘要:http://blog.csdn.net/dengrengong/article/details/40051339 ELF文件格式,全称为Excutable and Linking Format,是一个开放的可执行文件和链接文件格式,在Linux上很流行,跨平台软件的设计也多以ELF格式作为标准,其 阅读全文
posted @ 2017-05-24 15:48 zzfx 阅读(598) 评论(0) 推荐(0) 编辑
摘要:http://blog.csdn.net/cc_net/article/details/24726287 分段的作用 分页实际是一个纯粹逻辑上的概念,因为实际的程序和内存并没有被真正的分为了不同的页面。而分段则不同,他是一个逻辑实体。一个段中可以是变量,源代码或者堆栈。一般来说每个段中不会包含不同类 阅读全文
posted @ 2017-05-22 23:28 zzfx 阅读(874) 评论(0) 推荐(0) 编辑
摘要:http://www.cnblogs.com/tolimit/p/4775945.html?utm_source=tuicool&utm_medium=referral CPU的段寄存器 在CPU中,跟段有关的CPU寄存器一共有6个:cs,ss,ds,es,fs,gs,它们保存的是段选择符。而同时这 阅读全文
posted @ 2017-05-22 23:26 zzfx 阅读(798) 评论(0) 推荐(0) 编辑
摘要:http://blog.csdn.net/yusiguyuan/article/details/39520933 Linux对于内存的管理涉及到非常多的方面,这篇文章首先从对进程虚拟地址空间的管理说起。(所依据的代码是2.6.32.60) 无论是内核线程还是用户进程,对于内核来说,无非都是task_ 阅读全文
posted @ 2017-05-21 00:31 zzfx 阅读(372) 评论(0) 推荐(0) 编辑
摘要:http://blog.chinaunix.net/uid-20729583-id-1884615.html struct mm_struct { /* 指向线性区对象的链表头 */ struct vm_area_struct *mmap; /* 指向线性区对象的红-黑树 */ struct rb_ 阅读全文
posted @ 2017-05-21 00:30 zzfx 阅读(765) 评论(0) 推荐(0) 编辑
摘要:http://blog.csdn.net/qq_26768741/article/details/54375524 前言 上一篇我们谈论了task_struct这个结构体,它被叫做进程描述符,内部成员包含了很多与进程相关的信息,今天我们来看一下其中一个被叫做内存描述符的结构体——mm_struct, 阅读全文
posted @ 2017-05-20 23:35 zzfx 阅读(1060) 评论(0) 推荐(1) 编辑
摘要:ABI定义了如何使用ISA。 ISA定义了机器码的使用规则。 http://www.delorie.com/gnu/docs/gmp/gmp_6.html ABI and ISA ABI (Application Binary Interface) refers to the calling con 阅读全文
posted @ 2017-05-20 16:35 zzfx 阅读(456) 评论(0) 推荐(0) 编辑
摘要:http://www.cnblogs.com/mydomain/archive/2011/09/14/2175351.html 原理: 地址空间:一个连续的内存地址单元 物理地址空间:物理内存地址组成的地址空间,其空间大小与物理内存一致。 虚拟地址空间:CPU MMU 提供的功能,可将虚地址转换为物 阅读全文
posted @ 2017-05-19 23:53 zzfx 阅读(207) 评论(0) 推荐(0) 编辑
摘要:IA32的三种地址 逻辑地址:机器语言指令仍用这种地址指定一个操作数的地址或一条指令的地址。 这种寻址方式在Intel的分段结构中表现得尤为具体,它使得MS-DOS或Windows程序员把程序分为若干段。每个逻辑地址都由一个段和偏移量组成。 线性地址:线性地址是一个32位的无符号整数,可以表达高达2 阅读全文
posted @ 2017-05-19 23:52 zzfx 阅读(313) 评论(0) 推荐(0) 编辑