自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(8)
  • 收藏
  • 关注

原创 Cache与内存

Cache 中存放了内存中的一部分数据,CPU 在访问内存时要先访问 Cache,若 Cache 中有需要的数据就直接从 Cache 中取出,若没有则需要从内存中读取数据,并同时把这块数据放入 Cache 中。Cache 和内存交换数据的最小单位是一行,为方便管理,在 Cache 内部的高速储存器中,多个行又会形成一组。上图是一颗最简单的双核心 CPU,有三级 Cache,第一级 Cache 是指令和数据分开的,第二级 Cache 是独立于 CPU 核心的,第三级 Cache 是所有 CPU 核心共享的。

2023-03-18 18:37:21 689

原创 虚拟地址与物理地址

顶级页目录项指向页目录指针页,页目录指针项指向页目录页,页目录项指向页表页,页表项指向一个 4KB 大小的物理页,各级页目录项中和页表项中依然存在各种属性位,这在图中已经说明。顾名思义,就是真实存在的地址,物理地址在逻辑上也是一个数据,只不过这个数据会被地址译码器等电子器件变成电子信号,放在地址总线上,说明地址总线上的信号就代表了物理地址,地址总线电子信号的各种组合就可以选择到内存的储存单元,同时也可以选择其它设备的储存单元,如显卡中的显存、I/O 设备中的寄存器、网卡上的网络帧缓存器。

2023-03-12 16:30:38 3396

原创 硬件基础知识

硬件知识 实模式 保护模式 长模式

2022-08-02 21:28:40 1040

原创 操作系统内存管理

内存管理

2022-07-31 17:02:31 185

原创 震撼的Linux全景图:业界成熟的内核架构长什么样?

Linux全景图:Linux模块很多,但大概可以分为5大组件:众多组件之间主要靠函数调用来进行通信,一旦一个函数出了问题,就会波及整个组件,甚至导致整个系统崩溃,这说明Linux系统内核结构是传统的内核结构,也称为宏内核架构Darwin-XNU 内核Darwin 是由苹果公司在 2000 年开发的一个开放源代码的操作系统。它有两个内核层——Mach 层与 BSD 层,为什么两套内核会同时存在呢?是为了兼容之前为 Mach 开发的应用和设备驱动,就保留了 Mach 内核,同时加入了 B

2022-06-08 23:19:37 708

原创 操作系统内核架构

内核是计算机资源的管理者,为了让应用更好地使用资源。而计算机中资源分为硬件资源和软件资源,硬件资源大体上包含以下几类:总线,CPU 内存,硬盘,网卡,显卡,各种 I/O 设备,如显示器,打印机,键盘,鼠标等。经典的计算机内部结构图如下:而软件资源,表示的是计算机中的各种形式的数据,如文件,各种运行程序等内核就是上述硬件资源和软件资源的管理者,其内部的逻辑大致可以概括为:1.管理 CPU,CPU 是执行程序的,内核会把运行时的程序抽象成进程,所以可以简单理解为进程管理。2.管理内存,负

2022-05-07 23:37:16 1492

原创 手写操作系统-开发环境建立

1. 利用VirtualBox建立一个Ubuntu虚拟机;在Ubuntu上生产虚拟硬盘:a. 利用linux下的dd命令:生产一块100MB大小的二进制文件dd bs=512 if=/dev/zero of=hd.img count=204800;bs:表示块大小,这里是512字节;if:表示输入文件,/dev/zero就是Linux下专门返回0数据的设备文件,读取它就返回0;of:表示输出文件,即我们的硬盘文件。;count:表示输出多少块b. 格式化虚拟硬盘b.1. 将虚

2022-05-06 22:27:47 881

原创 GCC程序编译过程

利用GCC编译程序的一般过程:1. gcc Helloworld.c -E -o Helloworld.i 预处理,加入头文件,替换宏;2. gcc Helloworld.c -S -c -o Helloworld.s 编译:包含预处理, 将C程序转换成汇编程序3. gcc Helloworld.c -c -o Helloworld.o 汇编:包含预处理和编译,将汇编程序转换为可链接的二进制程序4. gcc Helloworld.c -o Helloworld 链接:包含以上操作,将可链

2022-05-05 16:43:33 134

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除