操作系统
文章平均质量分 86
birate_小小人生
专注,自信,坚持
展开
-
自己动手实现一个进程间通信组件
文章目录背景原理代码实现背景我们知道linux的进程的间通信的组件有管道,消息队列,socket, 信号量,共享内存等。但是我们如果自己实现一套进程间通信的机制的话,要怎么做?了解android 开发的可能会知道,android里面有个binder机制,简单来说,就是一个进程往binder里面写数据,另一个进程从binder里面读出数据。所以我们也可以按照binder的思路来设计一个自己的进程间通信组件。原理我们的设计思路很简单,我们首先需要注册一个字符设备文件叫**/dev/channel*原创 2022-03-27 22:08:26 · 1132 阅读 · 0 评论 -
用户态文件系统 fuse
文章目录fuse文件系统调试fuse文件系统众所周知,文件系统一般都是存在于内核态开发的,内核涉及东西比较多和复杂,不太方便,所以就衍生出用户态的文件系统fuse。 FUSE (用户态文件系统)是一个实现在用户空间的文件系统框架,通过 FUSE内核模块的支持,使用者只需要根据 fuse 提供的接口实现具体的文件操作就可以实现一个文件系统。FUSE 由三个部分组成, FUSE 内核模块, FUSE 库以及一些挂在工具。 FUSE 内核模块实现了和 VFS 的对接,它看起来像一个普通的文件系统模块,另外原创 2022-03-13 22:46:43 · 647 阅读 · 0 评论 -
伙伴分配器(buddy allocator)和slab
文章目录伙伴分配器(buddy allocator)和slaba.原理b. 数据结构slab 分配器用户API数据结构伙伴分配器(buddy allocator)和slab当系统内核初始化完毕后,使用页分配器管理物理页,当使用的页分配器是伙伴分配器,伙伴分配器的特点是算法简单且高效。连续的物理页称为页块(page block)。阶(order)是伙伴分配器的一个专业术语,是页的数量单位,2n2^n2n个连续页称为n阶页块。物理内存被分成多个order:0 ~ 10,每个order中连续page的个数是2原创 2021-12-19 22:51:14 · 2287 阅读 · 2 评论 -
引导内存分配器原理
文章目录引导内存分配器原理a. bootmem分配器b.memblock分配器引导内存分配器原理参考视频链接 https://ke.qq.com/course/417774?flowToken=1040955a. bootmem分配器在启动过程期间,尽管内存管理尚未初始化,但内核仍然需要分配内存以创建各种数据结构。bootmem分配器用于在启动阶段早期分配内存。显然,对该分配器的需求集中于简单性方面,而不是性能和通用性。因此内核开发者决定实现一个最先适配( first-fit)分配器用于在启动阶原创 2021-12-12 16:57:50 · 590 阅读 · 0 评论 -
内存映射原理
文章目录内存映射原理a. 内存映射原理b.数据结构b.1 虚拟内存区域的数据结构c. 系统调用和mmap内存映射c.1 系统调用内存映射原理a. 内存映射原理 内存映射即在进程的虚拟地址空间中创建一个映射,分为两种:文件映射:文件支持的内存映射,把文件的一个区间映射到进程的虚拟地址空间,数据源是存储设备上的文件。匿名映射:没有文件支持的内存映射,把物理内存映射到进程的虚拟地址空间,没有数据源。创建内存映射时,在进程的用户虚拟地址空间中分配一个虚拟内存区域。内核采用延迟分配物理内存的策略,在原创 2021-12-05 22:28:02 · 2132 阅读 · 0 评论 -
进程控制块Task_struct
文章目录进程的定义进程的创建进程的退出Task_struct 结构Task_struct这里不讲进程的基本原理,重点描述下进程的数据结构(task_struct).进程的定义正在执行的程序正在计算机上执行的程序实例能分配给处理器并有处理器执行的实体一组指令序列的执行、一个当前状态个相关的系统自愿集在进程执行时,任意给定一个时间,进程都可以唯一地被表征为以下元素:标识符: 跟这个进程相关的唯一标识符,用来区别其他进程状态: 进程的几个状态(等待、运行、停止)优先级: 进程的优先级原创 2021-11-23 23:47:53 · 3911 阅读 · 0 评论 -
读者-写着问题
定义:读者-写者问题是为了解决同步和并发机制的,有一个多个进程共享的数据区,这个数据区可以是一个文件或者一块内存空间,甚至可以是一组寄存器。有一些进程(reader)只读取这个数据区中的数据,一些进程(writer)只网数据区写数据;此外还必须满足以下条件:1. 任意多的读进程可以同时读这个文件。2. 一次只有一个写进程可以写文件。3. 如果一个写进程正在写文件,禁止任何读进程读文件。也...原创 2019-10-17 11:25:54 · 278 阅读 · 0 评论 -
进程同步的几种机制
文章来源:http://www.cnblogs.com/sonic4x/archive/2011/07/05/2098036.html多进程的系统中避免不了进程间的相互关系。本讲将介绍进程间的两种主要关系——同步与互斥,然后着重讲解解决进程同步的几种机制。 进程互斥是进程之间发生的一种间接性作用,一般是程序不希望的。通常的情况是两个或两个以上的进程需要同时访问某个共享变量。我们一...转载 2019-04-22 14:25:25 · 1738 阅读 · 0 评论