linux 内核
文章平均质量分 81
wong_daniel
我最喜欢的一句话 i do and i understand
展开
-
(N)UMA 模型中的内存组织------《深入Linux内核架构》笔记
<!-- @page {margin:2cm} p {margin-bottom:0.21cm} --> UMA(一致内存访问,uniformmemory access): 计算将内存以连续的方式组织起来。SMP中每个cpu访问各内存区具有一样的速度原创 2011-09-29 14:35:52 · 1788 阅读 · 0 评论 -
3.5.8 内核映射------《深入Linux内核架构》笔记
<!-- @page {margin:2cm} p {margin-bottom:0.21cm} --> vmalloc能完成高端内存到内核虚拟空间的映射,但是内核更期望一种能专门正对高端内存的映射关系,持久映射 便是将高端内存长久映射到内存虚拟地址空原创 2011-09-29 16:45:34 · 2156 阅读 · 0 评论 -
3.4 初始化内存管理------《深入Linux内核架构》笔记
<!-- @page {margin:2cm} p {margin-bottom:0.21cm} --> 内存的初始化是从全局启动例程start_kernel开始的。具体流程如下图: <!-- @page {margin:2cm}原创 2011-09-29 16:29:27 · 1989 阅读 · 0 评论 -
3.5 伙伴系统------《深入Linux内核架构》笔记
<!-- @page {margin:2cm} p {margin-bottom:0.21cm} --> 伙伴系统的相关结构 在bootmem完成系统启动阶段的内存管理后,bootmem将会把空闲的内存释放到伙伴系统由其管理,伙伴系统以其简单高效而著原创 2011-09-29 16:31:02 · 1670 阅读 · 0 评论 -
3.5.7 vmalloc 实现原理------《深入Linux内核架构》笔记
<!-- @page {margin:2cm} p {margin-bottom:0.21cm} --> 为什么要有vmalloc 在内核中,分配物理连续的内存对内核来说是最好不过的事情了,但是因为碎片的原因并不是总是能行,所以我们通过建立一种映射机原创 2011-09-29 16:36:08 · 3156 阅读 · 0 评论 -
Linux 进程栈和线程栈的区别
注:本文所涉及的环境为Linux, 下文讨论的栈跟内核栈,没有任何的关系,关于内核栈,请参考《深入Linux内核架构》中的2.4.1 进程复制 这里有如下几个问题,线程栈的空间是开辟在那里的? 线程栈之间可以互访吗?为什么在使用pthread_attr_setstack函数时,需要设置栈的大小,而进程task_struct的 mm_struct *mm 成员中却并没有却并没有stack_size原创 2012-11-05 11:31:14 · 10718 阅读 · 2 评论 -
VFS与Ext2文件系统------《深入Linux内核架构》笔记
1. VFS简介(Virtual File System, 虚拟文件系统) 在Linux内核中支持40多种文件系统,其来源也多种多样:来自MS-DOS的FAT文件系统, UFS(Berkeley UNIX), Ext2/3/4, 用于CD-ROM的iso9660, 网络文件系统(如coda和NFS)和虚拟的文件系统(如proc)。 Linux为了向用户空间(如C标准库)提供标准的接口,原创 2013-04-18 23:25:40 · 5408 阅读 · 0 评论 -
proc文件系统------《深入理解Linux内核架构》笔记
proc文件系统 1. proc简介(Process Data System, 进程数据系统) proc文件系统属于虚拟文件系统,即该文件系统的数据,由内核动态生成,并不会存放在持久存储数据中。 proc文件系统,使得内核可以生成与系统状态和配置有关的信息。该信息可以由用户和系统程序从普通文件读取,而无需专门的工具与内核通信。比如可以通过cat status打印进程的状态信息,如下:原创 2013-04-27 10:02:57 · 4356 阅读 · 1 评论