![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Linux
文章平均质量分 93
wd-onlooker
1010
展开
-
linux内存管理-2-初期memblock分配器
内核在启动时通过E820机制获得到可⽤的内存地址范围后,还需要将这些内存都管理起来,以应对后⾯系统运⾏时 的各种功能的内存申请。内存分配器包括两种。刚启动时采⽤是初期分配器。这种内存分配器仅仅只为了满⾜系统 启动时间内对内存⻚的简单管理,管理粒度较粗。另外⼀种是在系统起来后正常运⾏时采⽤的复杂⼀些但能⾼效管 理4KB粒度⻚⾯的伙伴系统,是运⾏时的主要物理⻚内存分配器。在初期分配器中,在Linux 的早期版本采⽤的是 bootmem。但在 2010 年之后,就慢慢替换成了 memblock 内存 分配器。翻译 2024-07-02 20:43:20 · 13 阅读 · 0 评论 -
Linux内存管理-1-物理内存初始化
但其实操作系统在刚刚启动的时候,对内存的可⽤地址范围、NUMA分组信息都是⼀⽆所知。在计算机的体系结构 中,除了操作系统和硬件外,中间还存在着⼀层固件( firmware)。固件是位于主板上的使⽤ SPI Nor Flash 存储着的软件。起着在硬件和操作系统中间承上启下的作⽤。它对外提供 接⼝规范是⾼级配置和电源接⼝( ACPI,Advanced Configuration and Power Interface)。其第⼀个版本ACPI1.0是1997年的时候由英特尔、微软和东芝公司共同推出的。翻译 2024-07-02 13:43:33 · 656 阅读 · 0 评论 -
linux文件描述符
linux文件描述符内容做个笔记。Linux 从诞生以来,一直用 struct task_struct 来表示进程/线程,用 struct file 表示打开的文件,用 struct inode 表示文件本身。struct file 和 struct inode 的区别在于,如果两次 open 同一个文件(比方说 web server 写 access log,你用 less 看这个 assess log 文件),会有两个 struct file 对象,指向同一个 struct inode 对象。转载 2024-06-26 23:04:03 · 9 阅读 · 0 评论