Linux进程的虚拟存储器知识点

本文探讨了在操作系统中虚拟存储器的概念及其在内核态的应用。文章详细介绍了进程虚拟存储器的组成部分,包括task_struct及mm_struct等关键数据结构,并解释了它们如何与虚拟地址空间中的不同区域相关联。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

http://blog.youkuaiyun.com/yxccc_914/article/details/52665713

这里写图片描述

用libreoffice画表真时有点蛋疼,效率很低..

深入理解计算机系统->虚拟存储器

内核虚拟存储器

操作系统处理进程时分为用户态和内核态.虚拟存储器中,进程虚拟存储器占大部分空间,内核虚拟存储器占小部分空间.

与进程相关的数据结构

每个进程都不相同.所以并不是每个进程的内核虚拟存储器都相同,里边有各个进程不同的部分.

这块区域相关联: 
1.task_struct 
(1) state:进程状态 
(2)thread_info:进程信息和内核堆栈 
(3)run_list,array:用于进程调度 
(4)mm:进程地址空间 
(5)pid:进程id 
(6)group_info:群组管理 
(7)user:用户管理 
(8)fs:工作目录,根目录 
(9)signal:信号信息 
(10)sighand:信号处理 
(11)程序计数器 
等等…. 
其中最重要的时mm,就是mm_struct

2.mm_struct 
(1)pgd:指向第一级页表基址 
(2)mmap:指向一个vm_area_struct(区域结构)的链表,每个vm_area_struct都描述了当前虚拟地址空间的一个区域(area). 
等等… 
重点mmap.

3.vm_area_struct 
(1)vm_end 
(2)vm_start 
(3)vm_prot:读写许可权限 
(4)vm_flags:是私有还是共享的 
(5)vm_next:指向链表中的下一个区域结构

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值