Linux
文章平均质量分 94
Linux学习
杰瑞的猫^_^
编程中成功,博客中沉淀
展开
-
【Linux】信号
信号(signal)是一种软中断,它本质上是在软件层次上对硬件中断机制的一种模拟。信号可用于进程间通信、处理异常,它通过操作系统向一个进程或者线程发送一种异步通知,用于通知该进程或线程某种事件已经发生,需要做出相应的处理。同时,进程收到信号到处理这个信号之前,必须具备保存这个信号的能力。原创 2024-07-27 02:17:21 · 970 阅读 · 0 评论 -
【Linux】管道通信和 system V 通信
因为它们的第一个字段 ipc_perm 是一样的,所以可以维护一个 struct ipc_perm* 的指针数组,存共享内存、消息队列、信号量它们三者中,第一个元素的地址,也就是 &ipc_perm。这样就可以把共享内存、消息队列和信号量三个部分直接管理起来了。而我们知道结构体的第一个成员的地址和结构体对象的地址在数值上是相同的,并且操作系统在内部可以识别这个对象是共享内存、消息队列和信号量中的哪一个,因此我们拿到这个数组中的 ipc_perm 地址便能访问这结构体的其它成员,将它们管理起来原创 2024-07-24 01:17:50 · 879 阅读 · 0 评论 -
【Linux】inode 软硬链接和动静态库
文件=内容+属性, 要理解 inode 是什么,首先得知道文件的内容和属性是分开存储的。文件数据(内容)储存在硬盘的数据块中,那么还得必须找到一个区域来存储文件的元信息(属性),这种存储文件元信息的区域就叫做 inode(索引节点)原创 2024-07-14 22:48:52 · 586 阅读 · 0 评论 -
【Linux】 文件读写&描述符&重定向& Linux 一切皆文件&缓冲区
站在操作系统内核数据结构上层来看,所有的软硬件设备和文件统一都是 file 对象,它是操作系统当中虚拟出来的一层文件对象,我们将这一层称为 虚拟文件系统 VFS,通过它,我们就可以摒弃掉底层设备的差别,统一使用文件接口的方式来进行文件操作,即 Linux 下一切皆文件!原创 2024-07-13 22:36:13 · 1113 阅读 · 0 评论 -
【Linux】进程终止和等待和程序替换
父进程通过等待,可以获取子进程的退出状态,并回收子进程占用的资源,避免资源泄漏。上面提到过,进程等待能够获取子进程的退出状态:即父进程可以通过等待获取子进程的退出码,从而了解子进程的执行结果是正常结束还是异常终止。2、获取子进程的退出状态:父进程可以通过等待获取子进程的退出码,从而了解子进程的执行结果是正常结束还是异常终止,以便做出相应的处理。4、同步和协调:在一些复杂的程序架构中,父进程可能需要根据子进程的执行结果来决定后续的操作,通过等待可以实现进程之间的同步和协调。而等待的方法有两种,阻塞和非阻塞。原创 2024-07-11 00:56:01 · 815 阅读 · 1 评论 -
进程地址空间和页表
现在我们对进程有了更加深入的理解,进程 = 内核数数据结构(task_struct&进程地址空间&页表)+ 程序的代码和数据。进程地址空间的存在可以让进程以统一的视角看待内存,虚拟地址空间可以让我们访问内存的时候,增加一个转换的过程,在这个转化的过程中,可以对我们的寻址请求进行审查,所以一旦异常访问,直接拦截,该请求不会到达物理内存,保护物理内存。因为有地址空间和页表的存在,将进程管理模块,和内存管理模块进行解耦合!原创 2024-01-24 12:58:16 · 966 阅读 · 2 评论 -
【Linux】fork父子进程简单理解
我们此时需要一个将被视为成功且不能为实际PID的值,0不是真实的PID(否则,孩子可能会认为它是父母)。同时, 0返回值也是系统调用指示成功的标准返回值。fork函数再执行return语句前,已经完成了子进程的创建工作,而return语句也是代码,父子共享,因此父进程在调度时返回一次,子进程调度时返回一次。为什么将子进程id返回给父进程,而返回0给子进程?为什么代码可以共享,数据不能被共享?进程=内核数据结构+代码和数据。原创 2023-07-30 20:49:43 · 118 阅读 · 0 评论 -
Linux 进度条
看完小白也能从0到1的实现Linux进度条,加深对回车换行的理解,认识行缓冲,实现简单倒计时和进度条原创 2023-07-11 17:09:04 · 2516 阅读 · 80 评论 -
Linux 软件安装及vim详细用法和配置
Linux软件安装及vim详细用法和配置原创 2023-05-27 18:52:16 · 5369 阅读 · 121 评论 -
Linux权限
Linux权限理解,粘滞位,以及如何更改权限原创 2023-05-17 20:03:12 · 1389 阅读 · 32 评论 -
Linux基本指令-3
date、cal、find、grep、zip、tar、uname……等指令详细使用教程原创 2023-05-15 22:05:11 · 755 阅读 · 25 评论 -
Linux指令-2
manmancpmvechocatmorelesshead或者tail。原创 2023-04-27 22:21:30 · 523 阅读 · 14 评论 -
认识Linux及其基本指令
基本概念:操作系统是一种系统软件,它通过管理计算机硬件和软件资源来控制和协调计算机的各种操作。它提供了用户与计算机之间的接口,并为应用程序提供服务和资源。操作系统负责分配和调度计算机的处理器、内存、输入/输出和其他资源,并提供文件管理、网络支持和安全等功能。常见的操作系统包括Windows、macOS、Linux和Android等。简单理解操作系统就是一款大型的做软硬件管理的软件,其核心工作要求就是对下管理好资源软件,对上提供安全、快速、稳定的使用环境。原创 2023-04-25 17:21:41 · 160 阅读 · 21 评论