
Linux/Unix
文章平均质量分 83
yyyuhan
本人还是一个在读的研究生
展开
-
Linux内存管理(1)
前言内存管理一向是所有操作系统书籍不惜笔墨重点讨论的内容,无论市面上或是网上都充斥着大量涉及内存管理的教材和资料。因此我们这里所要写的Linux内存管理采取必重就轻的策略,从理论层面就不去板门弄斧,贻笑大方了。我们最想做的和可能做到的是以开发者的角度谈谈对内存管理的理解,最终目的是把我们在内核开发中使用内存的经验和对Linux内存管理的认识与大家共享。当然这其中我们也会设计一些诸如段页等内转载 2008-06-26 22:19:00 · 855 阅读 · 0 评论 -
Linux内存管理(2)
进程内存的分配与回收创建进程fork()、程序载入execve()、映射文件mmap()、动态内存分配malloc()/brk()等进程相关操作都需要分配内存给进程。不过这时进程申请和获得的还不是实际内存,而是虚拟内存,准确的说是“内存区域”。进程对内存区域的分配最终多会归结到do_mmap()函数上来(brk调用被单独以系统调用实现,不用do_mmap()),内核使用do_mmap()函转载 2008-06-26 22:27:00 · 955 阅读 · 0 评论 -
Linux内存管理(3)
内存管理实例代码功能介绍我们希望能通过访问用户空间的内存达到读取内核数据的目的,这样便可进行内核空间到用户空间的大规模信息传输。具体的讲,我们要利用内存映射功能,将系统内核中的一部分虚拟内存映射到用户空间,从而使得用户空间地址等同与被映射的内核内存地址。代码结构体系介绍内核空间内存分配介绍因此我们将试图写一个虚拟字符设备驱动程序,通过它将系统内核空间映射到用户空间——将内核转载 2008-06-26 22:35:00 · 874 阅读 · 0 评论