操作系统原理笔记

                     

贡献者: 待更新

1. 内存空间

高地址
┌─────────────────────┐
│   内核空间           │ (操作系统内核)
├─────────────────────┤
│   栈区 (Stack)       │ ← 向下增长
│   - 局部变量         │
│   - 函数参数         │
│   - 返回地址         │
├─────────────────────┤
│         ↓           │
│    (空闲内存)        │
│         ↑           │
├─────────────────────┤
│   堆区 (Heap)        │ ← 向上增长(动态分配)
│   - malloc/new      │
├─────────────────────┤
│   共享库             │ (如 libc.so)
├─────────────────────┤
│   内存映射区          │
│   - 文件映射          │
│   - 共享内存          │
├─────────────────────┤
│   未初始化数据段 (.bss)│
│   - 未初始化全局/静态  │
│   - 初始化为 0        │
├──────────────────────┤
│   已初始化数据段 (.data)│
│   - 已初始化全局/静态   │
├─────────────────────-┤
│   只读数据段 (.rodata) │ ← 常量区
│   - 字符串常量         │
│   - const 全局变量     │
├──────────────────────┤
│   代码区 (.text)      │
│   - 函数代码           │
│   - 函数指针指向这里    │
├──────────────────────┤
│   保留区/未使用        │
└──────────────────────┘
低地址

                     

© 保留一切权利