Linux
文章平均质量分 87
key_3_feng
网络工程师
展开
-
学好操作系统需要的前置知识
学习需要一些好的方法和正确的态度原创 2023-12-07 22:23:19 · 659 阅读 · 0 评论 -
数据中心的操作系统——kubernets
有了 Kubernetes,我们就能像管理一台 Linux 服务器那样,去管理数据中心了。原创 2023-12-06 21:47:00 · 400 阅读 · 0 评论 -
Linux cgroup技术
cgroup 是一种特殊的文件系统。原创 2023-12-05 21:37:53 · 418 阅读 · 1 评论 -
Linux Namespace技术
namespace 相关的技术,有六种类型,分别是 UTS、User、Mount、Pid、Network 和 IPC。原创 2023-12-04 22:43:21 · 333 阅读 · 0 评论 -
Linux 上的容器技术
无论是容器,还是虚拟机,都依赖于内核中的技术,虚拟机依赖的是 KVM,容器依赖的是 namespace 和 cgroup 对进程进行隔离。原创 2023-12-03 21:27:07 · 279 阅读 · 0 评论 -
网络虚拟化场景下网络包的发送过程
网络虚拟化场景下网络包的发送过程原创 2023-12-02 22:10:44 · 310 阅读 · 0 评论 -
存储虚拟化的写入过程
存储虚拟化的场景下,整个写入的过程。原创 2023-12-01 21:21:38 · 292 阅读 · 0 评论 -
计算虚拟化之内存
虚拟机的内存管理也是需要用户态的 qemu 和内核态的 KVM 共同完成。原创 2023-11-30 22:12:24 · 368 阅读 · 0 评论 -
CPU虚拟化的过程
CPU虚拟化的过程原创 2023-11-29 21:49:22 · 294 阅读 · 0 评论 -
计算虚拟化之CPU——qemu解析
为了能够适配这些设备,qemu 定义了自己的模块管理机制,只有了解了这种机制,后面看每一种设备的虚拟化的时候,才有一个整体的思路。原创 2023-11-28 22:46:06 · 441 阅读 · 0 评论 -
Linux虚拟化的模式
虚拟化主要模拟 CPU、内存、网络、存储,分别有不同的加速办法原创 2023-11-27 22:41:59 · 352 阅读 · 0 评论 -
接收网络包的过程——从硬件网卡解析到IP层
解析接收网络包,从硬件网卡解析到 IP 层。原创 2023-11-25 16:54:36 · 689 阅读 · 0 评论 -
发送一个网络数据包的过程解析
发送一个网络包的过程:VFS——Socket——Sock——TCP——IP——Mac——设备层。原创 2023-11-24 16:56:01 · 493 阅读 · 0 评论 -
TCP /UDP协议的 socket 调用的过程
TCP /UDP协议的 socket 调用的过程原创 2023-11-23 20:06:30 · 1121 阅读 · 0 评论 -
Socket通信之网络协议基本原理
即便在如此简单的一个环境中,网络包的发送过程,竟然如此的复杂。TCP/UDP->IPv4->ARP 这一条链。原创 2023-11-22 16:02:53 · 964 阅读 · 0 评论 -
共享内存的创建和映射过程
共享内存的创建和映射过程。原创 2023-11-21 22:33:57 · 263 阅读 · 0 评论 -
共享内存和信号量的配合机制
共享内存和信号量的配合机制。原创 2023-11-20 21:13:14 · 198 阅读 · 0 评论 -
Linux管道的工作过程
无论是匿名管道,还是命名管道,在内核都是一个文件。原创 2023-11-19 22:40:29 · 220 阅读 · 0 评论 -
信号的机制——信号的发送与处理
信号的发送与处理是一个复杂的过程原创 2023-11-18 23:08:53 · 589 阅读 · 0 评论 -
信号的机制——信号处理函数的注册
信号处理函数的注册过程原创 2023-11-17 22:20:36 · 473 阅读 · 0 评论 -
Linux进程间通信模式
进程间通信的各种模式。原创 2023-11-16 22:23:32 · 157 阅读 · 0 评论 -
块设备 I/O 请求送达到外部设备
操作系统真的是一个非常复杂的体系,环环相扣,需要分层次层层展开来学习。原创 2023-11-15 22:40:05 · 146 阅读 · 0 评论 -
块设备的工作模式
块设备比字符设备复杂多了,涉及三个文件系统原创 2023-11-14 22:10:19 · 232 阅读 · 0 评论 -
中断处理机制解析
中断是从外部设备发起的,会形成外部中断。外部中断会到达中断控制器,中断控制器会发送中断向量 Interrupt Vector 给 CPU。原创 2023-11-13 22:40:31 · 222 阅读 · 0 评论 -
Linux中字符设备的打开、写入
字符设备的打开、写入的常见操作。原创 2023-11-12 21:56:04 · 695 阅读 · 0 评论 -
Linux输入与输出设备的管理
输入输出需要层层屏蔽差异化的部分,给上层提供标准化的部分,最终到用户态,给用户提供了基于文件系统的统一的接口。原创 2023-11-11 22:49:48 · 385 阅读 · 0 评论 -
文件缓存的读写
在系统调用层需要仔细学习 read 和 write。在 VFS 层调用的是 vfs_read 和 vfs_write 并且调用 file_operation。在 ext4 层调用的是 ext4_file_read_iter 和 ext4_file_write_iter。接下来就是分叉。你需要知道缓存 I/O 和直接 I/O。直接 I/O 读写的流程是一样的,调用原创 2023-11-10 22:44:24 · 878 阅读 · 0 评论 -
解析虚拟文件系统的调用
解析系统调用是了解内核架构最有力的一把钥匙。原创 2023-11-09 22:41:38 · 209 阅读 · 0 评论 -
Linux 下最主流的文件系统格式——ext
无论是文件夹还是文件,都有一个 inode。inode 里面会指向数据块,对于文件夹的数据块,里面是一个表,是下一层的文件名和 inode 的对应关系,文件的数据块里面存放的才是真正的数据。原创 2023-11-08 22:36:24 · 517 阅读 · 0 评论 -
Linux文件系统的功能规划
文件通过文件夹组织起来,可以方便用户使用。为了能够更快读取文件,内存里会分配一块空间作为缓存,让一些数据块放在缓存里面。原创 2023-11-07 22:25:21 · 166 阅读 · 0 评论 -
内核态内存映射
对于内核态,kmalloc 在分配大内存的时候,以及 vmalloc 分配不连续物理页的时候,直接使用伙伴系统,分配后转换为虚拟地址,访问的时候需要通过内核页表进行映射。原创 2023-11-06 22:54:59 · 224 阅读 · 0 评论 -
用户态内存映射
用户态内存映射函数 mmap,包括用它来做匿名映射和文件映射。用户态的页表结构,存储位置在 mm_struct 中。原创 2023-11-05 21:34:57 · 211 阅读 · 0 评论 -
物理内存的关系及分配模式
物理内存从下层到上层的关系及分配模式。原创 2023-11-04 22:22:14 · 260 阅读 · 0 评论 -
物理内存的组织形式
如果有多个 CPU,那就有多个节点。每个节点用 struct pglist_data 表示,放在一个数组里面。每个节点分为多个区域,每个区域用 struct zone 表示,也放在一个数组里面。原创 2023-11-03 22:55:14 · 238 阅读 · 0 评论 -
进程空间管理:用户态和内核态
用户态:代码段、全局变量、BSS;函数栈;堆;内存映射区。内核态:内核的代码、全局变量、BSS;内核数据结构例如 task_struct;内核栈;内核中动态分配的内存。原创 2023-11-02 22:40:26 · 191 阅读 · 0 评论 -
Linux内存管理的分页机制
内存管理系统精细化为下面三件事情:第一,虚拟内存空间的管理,将虚拟内存分成大小相等的页;第二,物理内存的管理,将物理内存分成大小相等的页;第三,内存映射,将虚拟内存页和物理内存页映射起来,并且在内存紧张的时候可以换出到硬盘中。原创 2023-11-01 11:00:00 · 186 阅读 · 0 评论 -
操作系统的内存管理之虚拟空间
一个内存管理系统至少应该做三件事情:虚拟内存空间的管理、物理内存的管理、内存映射。原创 2023-10-31 20:55:36 · 155 阅读 · 0 评论 -
线程是如何创建的
创建进程和创建线程在用户态和内核态的不同。原创 2023-10-30 22:29:12 · 292 阅读 · 0 评论 -
创建进程中的内核操作
进程的创建原创 2023-10-29 22:20:27 · 205 阅读 · 0 评论 -
抢占式调度是如何发生的
进程调度第一定律的核心函数 __schedule 的执行过程。原创 2023-10-28 22:31:26 · 203 阅读 · 0 评论