![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Linux Kernel
文章平均质量分 77
fxfzz
顺境时不懈怠,逆境时不沉沦!
展开
-
Linux设备驱动编程之内存与I/O操作
<br />http://dev.yesky.com/412/2639912.shtml<br /> <br /><br />对于提供了MMU(存储管理器,辅助操作系统进行内存管理,提供虚实地址转换等硬件支持)的处理器而言,Linux提供了复杂的存储管理系统,使得进程所能访问的内存达到4GB。<br /><br /> 进程的4GB内存空间被人为的分为两个部分--用户空间与内核空间。用户空间地址分布从0到3GB(PAGE_OFFSET,在0x86中它等于0xC0000000),3GB到4GB为内核空间,如下转载 2011-02-11 14:47:00 · 1231 阅读 · 0 评论 -
linux kernel 内存分配概述
<br />linux kernel支持虚拟内存管理机制,通过页表机制实现对物理内存、内核逻辑内存和内核虚拟内存的管理。<br /> <br />linux kernel通过struct page结构来管理系统中的物理内存。kernel维护了一个或多个page结构数组,用来跟踪系统中的物理内存。在一些系统中,有一个单独的数组称之为mem_map。<br /> <br />kernel所能直接进行读写操作的内存只能是广义的内核虚拟内存(包括内核逻辑内存)。<br /> <br />常用的kernel内存处理函原创 2011-02-11 17:46:00 · 1724 阅读 · 0 评论 -
Linux 内存管理综述
<br />1、进程的4G 线性空间被划分成三个部分:进程空间(0-3G)、内核直接映射空间(3G – high_memory)、内核动态映射空间(VMALLOC_START-VMALLOC_END)<br />2、三个空间使用同一张页目录表,通过 CR3 可找到此页目录表。但不同的空间在页目录表中页对应不同的项,因此互相不冲突<br />3、内核初始化以后,根据实际物理内存的大小,计算出 high_memory、VMALLOC_START、VMALLOC_END 的值。并为“内核直接映射”空间建立好映射关转载 2011-02-11 15:51:00 · 760 阅读 · 0 评论 -
linux 内存管理内幕
<br />http://docs.huihoo.com/joyfire.net/3-1.html#Content<br /> 目 录<br />内存内存管理子系统导读from aka用户态内核页目录的初始化内核线程页目录的借用用户进程内核页目录的建立内核页目录的同步mlock代码分析memory.ccopy_pageclear_page_tablesoomfree_page_tablesnew_page_tablescopy_one_ptecopy_pte_rangecopy_pmd_rangecopy_转载 2011-02-11 15:54:00 · 1328 阅读 · 0 评论