linux
文章平均质量分 70
mimikooper
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Linux基础概念
用户态和内核态原因: 部分CPU指令的危险性,如清内存、设置时钟等 解决: 设置特权等级,如Intel的CPU设置特权11和00两种,标记代码及数据的等级,特权等级低的有些操作不允许。 当任务/进程执行系统调用而陷入内核代码中执行,进程处于内核运行态/内核态,此时处理器在特权级最高0级的内核代码中执行。执行的内核代码会使用当前进程的内核栈。 而在用户态执行时,在特权级最低3级的用户代码中执原创 2017-05-23 13:51:58 · 389 阅读 · 0 评论 -
计算机基础(一)——硬件架构
参考:CSAPP原创 2017-05-23 10:14:42 · 642 阅读 · 0 评论 -
计算机基础(二)——程序执行
程序编译1、源程序如.c/.cpp 2、经过预处理器,得到被修改后的源程序.i: 预处理器可以删除注释、包含其他文件以及执行宏(宏macro是一段重复文字的简短描写)替代。 3、经过编译器,得到汇编文本.s 4、经过汇编器,得到可重定位目标程序,二进制文件.o 5、经过链接器,如printf.o加入,得到可执行目标程序 6、程序存放在磁盘中或加载到内存中执行可执行目标文件格式一个典型的E原创 2017-05-23 15:03:59 · 482 阅读 · 0 评论 -
Linux内存管理(三)——用户空间管理
用户空间——进程空间 首先内核通过映射即值把进程的虚拟地址映像到物理地址,在进程运行时,如果内核发现进程要访问的页没有在物理内存时(却页异常),就发出了请页要求; 如果有空闲的内存可供分配,就要请求分配内存(于是用到了内存的分配和回收),并把正在使用的物理页记录在页缓存(使用了缓存机制); 如果没有足够的内存可供分配,那么就调用交换机制,腾出一部分内存;首先在地址映像需要要通过TLB(旁路原创 2017-05-23 17:07:33 · 409 阅读 · 0 评论 -
Linux内存管理(四)——物理内存管理
slab算法原创 2017-05-23 17:08:30 · 433 阅读 · 0 评论 -
Linux内存管理(五)——内核空间管理
slab算法原创 2017-05-23 19:08:40 · 313 阅读 · 0 评论 -
Linux内存管理(六)——常见函数
上层函数: malloc() free() 系统调用: brk() mmap() 内核函数: kmalloc vmalloc kmap kmap_atomic原创 2017-05-23 19:40:23 · 359 阅读 · 0 评论 -
Linux内存管理(二)——地址映射
x86系列CPU寻址基本概念CPU位数:ALU位数; 总线:可作为地址总线或数据总线或控制总线使用,具体视发送指令而定; 地址总线:CPU通过地址总线来指定存储单元; 数据总线:CPU与内存或其他器件之间的数据传送的通道,位数与CPU位数一样; CPU寻址:CPU发出相应指令到地址总线上,寻找主存相应地址; MMU:内存管理单元,转换成物理地址,之后发送到地址总线上;寻址方式的变化远古:原创 2017-05-23 09:22:58 · 655 阅读 · 0 评论 -
Linux文件系统
文件映射原创 2017-05-23 19:43:18 · 205 阅读 · 0 评论
分享