操作系统原理
FishBear_move_on
github 地址 https://github.com/Jayhello
展开
-
Linux内存管理基本概念
作者:Dong | 可以转载, 但必须以超链接形式标明文章原始出处和作者信息及版权声明网址:http://dongxicheng.org/os/linux-memory-management-basic/1. 基本概念1.1 地址(1)逻辑地址:指由程序产生的与段相关的偏移地址部分。在C语言指针中,读取指针变量本身值(&操作),实际上这个值就是逻辑地址,它是相对于你当前进程数据转载 2014-12-16 19:45:02 · 502 阅读 · 0 评论 -
编程思想之多线程与多进程(1)——以操作系统的角度述说线程与进程
原文:http://blog.csdn.net/luoweifu/article/details/46595285 作者:luoweifu 转载请标名出处什么是线程什么是线程?线程与进程与有什么关系?这是一个非常抽象的问题,也是一个特别广的话题,涉及到非常多的知识。我不能确保能把它讲的话,也不能确保讲的内容全部都正确。即使这样,我也希望尽可能地把转载 2015-07-06 19:32:18 · 528 阅读 · 0 评论 -
分页和分段的联系和区别
一. 分页存储管理1.基本思想 用户程序的地址空间被划分成若干固定大小的区域,称为“页”,相应地,内存空间分成若干个物理块,页和块的大小相等。可将用户程序的任一页放在内存的任一块中,实现了离散分配。2. 分页存储管理的地址机构15 12 11 0 页号P 页内位移量转载 2014-12-30 10:56:12 · 2077 阅读 · 0 评论 -
80386的分段机制、分页机制和物理地址的形成
注:本分类下文章大多整理自《深入分析linux内核源代码》一书,另有参考其他一些资料如《linux内核完全剖析》、《linux c 编程一站式学习》等,只是为了更好地理清系统编程和网络编程中的一些概念性问题,并没有深入地阅读分析源码,我也是草草翻过这本书,请有兴趣的朋友自己参考相关资料。此书出版较早,分析的版本为2.4.16,故出现的一些概念可能跟最新版本内核不同。此书已经开源,阅读地址转载 2014-12-30 10:00:19 · 533 阅读 · 0 评论 -
Ext2文件系统布局,文件数据块寻址,VFS虚拟文件系统
http://blog.csdn.net/jnu_simba/article/details/11759809注:本分类下文章大多整理自《深入分析linux内核源代码》一书,另有参考其他一些资料如《linux内核完全剖析》、《linux c 编程一站式学习》等,只是为了更好地理清系统编程和网络编程中的一些概念性问题,并没有深入地阅读分析源码,我也是草草翻过这本书,请有兴趣的转载 2014-12-30 10:03:09 · 536 阅读 · 0 评论 -
内存管理概述、内存分配与释放、地址映射机制(mm_struct, vm_area_struct)、malloc/free 的实现
http://blog.csdn.net/jnu_simba/article/details/11757473注:本分类下文章大多整理自《深入分析linux内核源代码》一书,另有参考其他一些资料如《linux内核完全剖析》、《linux c 编程一站式学习》等,只是为了更好地理清系统编程和网络编程中的一些概念性问题,并没有深入地阅读分析源码,我也是草草翻过这本书,请有兴趣的朋友转载 2014-12-30 09:54:17 · 550 阅读 · 0 评论 -
操作系统的几种地址详解
http://bbs.chinaunix.net/thread-2083672-1-1.html要过年了,发个年终总结贴,只是个人理解,不包正确哈。本贴涉及的硬件平台是X86,如果是其它平台,嘻嘻,不保证能一一对号入座,但是举一反三,我想是完全可行的。一、概念物理地址(physical address)用于内存芯片级的单元寻址,与处理器和转载 2014-12-30 10:34:54 · 1632 阅读 · 1 评论 -
操作系统八内存管理
CPU直接访问的存储器只有内存和处理器内的寄存器。1.基本硬件 CPU可以在一个cpu时钟内执行一个或多个其内置寄存器的指令。而访问内存需多个cpu时钟。由于内存频繁访问,可以再cpu与内存之间增加高速缓存 为确保进程有独立的内存空间,可用基地址寄存器和界限地址寄存器来确立一个合法地址以供其他进程访问。基地址寄存器含有最小的合法物理内存地址,界限地址寄存器决转载 2014-12-30 10:31:48 · 532 阅读 · 0 评论 -
中断机制和中断描述符表、中断和异常的处理
注:本分类下文章大多整理自《深入分析linux内核源代码》一书,另有参考其他一些资料如《linux内核完全剖析》、《linux c 编程一站式学习》等,只是为了更好地理清系统编程和网络编程中的一些概念性问题,并没有深入地阅读分析源码,我也是草草翻过这本书,请有兴趣的朋友自己参考相关资料。此书出版较早,分析的版本为2.4.16,故出现的一些概念可能跟最新版本内核不同。此书已经开源,阅读地址转载 2014-12-30 09:58:50 · 570 阅读 · 0 评论 -
从汇编角度来理解linux下多层函数调用堆栈运行状态
http://blog.csdn.net/jnu_simba/article/details/25158661注:在linux下开发常用的辅助小工具:readelf 、hexdump、od、objdump、nm、telnet、nc 等,具体可以man一下。我们用下面的C代码来研究函数调用的过程。 C++ Code转载 2014-12-30 09:50:42 · 521 阅读 · 0 评论 -
Linux 的开机启动流程详解
作者: 阮一峰半年前,我写了《计算机是如何启动的?》,探讨BIOS和主引导记录的作用。那篇文章不涉及操作系统,只与主板的板载程序有关。今天,我想接着往下写,探讨操作系统接管硬件以后发生的事情,也就是操作系统的启动流程。这个部分比较有意思。因为在BIOS阶段,计算机的行为基本上被写死了,程序员可以做的事情并不多;但是,一旦进入操作系统,程序员几乎可以定制所有方转载 2014-12-27 16:14:09 · 462 阅读 · 0 评论 -
操作系统内存管理——分区、页式、段式管理
1. 内存管理方法 内存管理主要包括虚地址、地址变换、内存分配和回收、内存扩充、内存共享和保护等功能。 2. 连续分配存储管理方式 连续分配是指为一个用户程序分配连续的内存空间。连续分配有单一连续存储管理和分区式储管理两种方式。2.1 单一连续存储管理 在这种管理方式中,内存被分为两个区域:系统区和用户区。应用转载 2014-12-16 19:43:33 · 762 阅读 · 0 评论 -
漫画赏析:Linux 内核到底长啥样
今天,我来为大家解读一幅来自 TurnOff.us 的漫画 “InSide The Linux Kernel” 。 TurnOff.us 是一个极客漫画网站,作者Daniel Stori 画了一些非常有趣的关于编程语言、Web、云计算、Linux 相关的漫画。今天解读的便是其中的一篇。在开始,我们先来看看这幅漫画的全貌!这幅漫画是以一个房子的侧方刨面图来绘画的。使用这样转载 2017-03-16 09:46:59 · 1314 阅读 · 1 评论