
Linux操作系统
文章平均质量分 84
本栏是 Linux 知识的 详细讲解 , 学习完本栏你将会对 Linux 操作系统有全新的认识 , 质的变化 , 对 Linux 深刻理解 !
看山即山.
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【HTTP】HTTP 无状态?Cookie + Session 手把手教服务器 “记住” 你 !
HTTP协议是无状态且无连接的,服务器默认不记录客户端状态。为解决这一问题,引入了Cookie和Session机制。Cookie是由服务器发送到客户端的小型文本数据,用于存储信息以识别客户端,但存在安全隐患。Session则在服务器端存储用户会话状态,通过Session ID与客户端交互,安全性更高。实际应用中,通常结合Cookie和Session实现会话保活,弥补HTTP无状态的缺陷。两者协同工作,共同维护客户端与服务器间的状态识别。原创 2025-08-14 19:00:00 · 293 阅读 · 0 评论 -
【Linux】Linux 操作系统 - 34 , 线程(三) 手把手带你写生产者和消费者模型 ! (最常用 ! 非常重要 !!!!)
生产者消费者模型是一种多线程协作模式,通过引入缓冲区解决生产与消费速率不匹配问题。生产者负责生成数据,消费者处理数据,两者通过中间队列解耦运行。实现该模型需准备多线程、队列及同步机制(互斥锁、条件变量)。文章详细介绍了基于阻塞队列的实现方式,并封装了锁组件和条件变量组件,其中条件变量更适合处理队列空/满状态的同步问题。通过RAII风格的锁守卫类(LockGuard)实现自动加解锁,确保线程安全。该模型能有效提高系统效率和资源利用率。原创 2025-08-11 19:15:00 · 677 阅读 · 0 评论 -
【Linux】Linux 操作系统 - 33 , 线程(二) 线程互斥和同步 , 带你对线程使用深刻理解 !
本文介绍了线程互斥的概念及其在多线程编程中的重要性。线程互斥用于解决多个线程同时访问共享资源时可能引发的数据竞争和不一致性问题。通过一个抢票的代码示例,展示了多线程竞争共享资源导致的数据不一致现象。为了解决这一问题,文章详细讲解了互斥锁的使用方法,包括全局锁和局部锁的创建、加锁、解锁及销毁操作。关键点在于保证临界区的原子性执行,确保同一时间只有一个线程能访问共享资源。通过正确使用互斥锁,可以有效避免数据竞争问题,确保程序的正确性和稳定性。原创 2025-08-04 19:15:00 · 950 阅读 · 0 评论 -
【Linux】Linux 操作系统 - 32 , 线程(一) 概念理解_线程控制 , 带你真正深入理解线程 !!!
本文摘要: 文章系统讲解了线程与进程的核心概念及区别。进程是资源分配的基本单位,线程是CPU调度的基本单位。在Linux中,线程通过轻量级进程实现,使用POSIX线程库(pthread)进行封装管理。文章详细介绍了线程的基本操作:创建(pthread_create)、终止(return/pthread_exit/pthread_cancel)和等待(pthread_join),并强调线程退出时必须等待以避免内存泄漏。最后通过代码示例展示了多线程编程的注意事项,解释了线程ID传递的错误方式。原创 2025-07-30 19:15:00 · 561 阅读 · 0 评论 -
【Linux】Linux 操作系统 - 31 , 进程信号(三) -- 手把手带你深挖进程信号 _ 信号的处理【面试特别重要 !!!!!!】
本文主要讲解了信号处理机制、操作系统运行原理、内核态与用户态切换等核心内容。信号处理部分详细分析了默认捕捉、忽略捕捉和自定义捕捉三种方式的实现流程,特别强调了自定义捕捉需要从内核态返回用户态执行处理函数。操作系统运行部分阐述了硬件中断、时钟中断和软中断的触发机制,以及系统调用通过软中断实现的过程。内存管理方面重点介绍了分页式存储管理和页表映射原理。最后解析了用户态与内核态的区别及切换机制,并补充了volatile关键字的作用。这些知识点都是操作系统和面试中的核心内容,需要深入理解和掌握。原创 2025-07-28 19:30:00 · 647 阅读 · 0 评论 -
【Linux】Linux 操作系统 - 30 , 进程信号(二) -- 手把手带你深挖进程信号 _ 信号的保存【面试重要 !!!】
本文介绍了Linux系统中信号处理的基本概念和底层实现原理。主要内容包括:1. 信号的基本概念:递达(信号执行处理动作)、未决(信号从产生到递达之间的状态)和阻塞(信号无法递达的状态);2. 信号保存机制:通过内核中的三张表(block表、pending表和handler表)记录信号状态;3. core dump功能:生成核心转储文件用于事后调试,可通过ulimit命令开启或设置大小。文章通过代码示例演示了core dump功能在调试中的实用价值,并解释了其底层实现原理。原创 2025-07-21 19:55:36 · 686 阅读 · 0 评论 -
【Linux】Linux 操作系统 - 29 , 进程信号(一) -- 手把手带你深挖进程信号 _ 信号的产生 !
在 Linux 等操作系统中,进程信号(Process Signal) 是一种用于通知进程发生某种事件的异步通信机制。它是操作系统、其他进程或进程自身向目标进程传递的 “消息”,用于触发进程的特定处理动作(如终止、暂停、继续运行等)。啥意思呢??异步又是啥呢??就像我们在餐馆吃饭 , 我们点了餐 , 但是商家还在做 ,在做餐的过程中 , 我们什么都不能干 , 只能等餐上桌 .就像我们在餐馆吃饭 , 我们点了餐 , 但是商家还在做 ,在做餐的过程中 , 我们可以做我们自己的事情。原创 2025-07-17 19:15:00 · 744 阅读 · 0 评论 -
【Linux】Linux 操作系统 - 28 , 进程间通信(四) -- IPC 资源的管理方式_信号量_临界区等基本概念介绍
本文介绍了Linux进程间通信的内核管理方式,重点分析了共享内存、管道、消息队列和信号量的实现机制。文章指出操作系统通过"先描述后组织"的方式管理共享内存,管道则采用文件管理系统进行管理。同时,文章详细讲解了进程通信中的关键概念:共享资源(多个进程可见的公共资源)、临界资源(被保护的资源)、互斥(仅允许单进程访问)和同步(有序访问资源)。此外,还区分了代码中的临界区(涉及互斥资源的代码段)和非临界区。最后,文章阐明信号量本质上是一个计数器,用于标识临界资源的数量。原创 2025-07-14 19:15:00 · 1322 阅读 · 0 评论 -
【Linux】Linux 操作系统 - 26 , 进程间通信(二) -- 命名管道的原理和使用
本文介绍了命名管道(FIFO)作为进程间通信机制的原理和使用方法。命名管道适用于无关联进程间的通信,通过创建同一管道文件实现数据交互。与匿名管道不同,命名管道需要指定路径名,在系统中被视为文件。文章详细说明了命名管道的创建(mkfifo)、删除(rm/unlink)命令,以及通过echo和cat命令的简易通信示例。在代码层面,重点介绍了使用mkfifo、unlink等系统调用的实现方式,并提供了server/client通信的完整代码框架,包括文件操作类的封装等原创 2025-07-03 15:43:27 · 36 阅读 · 0 评论 -
【Linux】Linux 操作系统 - 24 , 进程间通信(一) 之管道初识 ! - 匿名管道
进程间通信是不同进程间交换信息的关键技术,主要解决数据传输、资源共享、事件通知和进程控制等问题。常见的通信方式包括管道(匿名/命名)、System V和POSIX IPC。匿名管道通过共享文件实现通信,创建流程为:父进程调用pipe()创建管道,fork()创建子进程,关闭无关文件描述符后即可单向通信。管道本质是内核级文件,因无路径名而称为"匿名"。本文重点解析了匿名管道的原理、系统调用接口和实现步骤,强调父子进程通过共享文件结构体实现数据交互,为进程通信提供了基础解决方案。原创 2025-06-25 19:30:00 · 768 阅读 · 0 评论 -
【Linux】Linux 操作系统 - 23 , 带你手把手制作动静态库 !
介绍 : 静态库是一种目标文件的集合,它是在程序编译时被链接到目标代码中的 , 程序编译时不再需要静态库. 关于静态库的详细介绍内容 , 笔者会放到下一篇章中详细讲解 .关于静态库我们要知道一点即可 : 用静态库时是拷贝到我们的程序中的!详细内容请期待下一篇章!简单了解一下 :动态库(Dynamic Library)是一种在程序运行时被加载的共享代码库, 也叫共享库 .程序在运行的时候才去链接动态库的代码,多个程序共享使用库的代码 .原创 2025-06-23 19:45:00 · 936 阅读 · 0 评论 -
【Linux】Linux 操作系统 - 22 , 软硬链接详解 !
本文会详细对软硬链接介绍 , 带学者彻底理解软硬链接 !原创 2025-06-11 19:30:00 · 640 阅读 · 0 评论 -
【Linux】Linux 操作系统 - 21 , 手把手带你写一个 shell命令行解释器 ~ 深入理解 shell 原理 !!!!!!!!
我们平常一直在使用命令行写 Linux 相关命令 , 但是这个命令行的背后的本质真的了解吗?本文将会带你深入了解 shell 到底做了什么???重点是了解其原理 , 真正意义上的了解!笔者之前文章详细介绍过 shell 原理概念 , 详细请看shell 原理初步理解!这里在回顾一下!Linux 操作系统中 shell 为 : bash!所以 , 到目前为止我们 只知道 shell 可以处理命令 , 保护操作系统 , 但是底层到底是怎样 , 请继续阅读!!●。原创 2025-06-09 19:15:00 · 254 阅读 · 0 评论 -
【Linux】Linux 操作系统 - 20 ,带你手把手彻彻底底搞懂文件系统 , 形成完整的文件体系 !
本篇系列就会进入文件系统部分 , 这里将会正式带大家了解文件到底是怎么回事 ,Linux 系统底层到底在做什么 ?? 相信认真学习完本文 , 你会大有所获 ! 颠覆你对文件的认知 ! 本文篇幅较长 , 皆给学者一个完整的文件体系 , 让学者彻彻底底的搞明白 !原创 2025-06-03 19:30:00 · 602 阅读 · 0 评论 -
【Linux】Linux 操作系统 - 19 , 重谈文件(三) ~ 学好 Linux 精髓是什么 , 缓冲区又是什么 ???【面试】
本文探讨了Linux“一切皆文件”的设计理念 , 解释了缓冲区相关机制 !原创 2025-05-27 19:45:00 · 1026 阅读 · 0 评论 -
【Linux】Linux 操作系统 - 18 , 重谈文件(二) ~ 文件描述符和重定向原理 , 手把手带你彻底理解 !!!
本文详细介绍了Linux系统中的文件描述符(fd)概念及其管理机制 、重定向原理 。原创 2025-05-26 19:45:00 · 1677 阅读 · 0 评论 -
【Linux】Linux 操作系统 - 17 , 重谈文件(一) ~ 文件初识部分详细内容 , 颠覆你对文件的认知 !
本文探讨了文件操作的基本概念及其在Linux系统中的实现。文件操作本质 、系统层面,文件操作,还回顾了C语言中的文件操作等。原创 2025-05-22 11:15:00 · 797 阅读 · 0 评论 -
【Linux】Linux 操作系统 - 16 , 进程控制 ! ------- 「一文彻底搞懂」进程等待和进程程序替换 !
本文详细介绍了进程等待的概念及其在操作系统中的重要性。展示了如何使用wait()和waitpid()系统调用来处理子进程的退出状态,避免僵尸进程的产生。文章还深入探讨了wstatus参数的作用,解释了如何通过该参数获取子进程的退出状态信息,并提供了相关代码示例。原创 2025-05-14 11:00:00 · 1070 阅读 · 0 评论 -
【Linux】Linux 操作系统 - 15 , 进程控制 ! ------- 「一文搞懂」进程创建与退出的全部细节!
本文深入探讨了进程控制的核心内容,主要包括进程创建、进程终止、进程等待以及进程的程序替换。在进程创建部分,介绍了fork系统调用的使用,并详细解释了写时拷贝的原理,即在数据共享时,修改数据会触发写时拷贝,而不是直接修改原数据。进程终止部分则分析了程序退出的三种方式:return、exit和_exit,并对比了它们的区别。exit会刷新缓冲区并执行清理工作,而_exit则直接终止进程,不刷新缓冲区。原创 2025-05-11 11:15:00 · 920 阅读 · 0 评论 -
【Linux】Linux 操作系统 - 14 , 程序地址空间竟然是这样 ?? 一文彻底搞懂进程虚拟地址空间初识(一) !
地址空间的分布图以上的图只是形象的划分 , 那么在 Linux 操作系统中是怎样做到这样的划分的呢?原创 2025-05-08 12:10:32 · 749 阅读 · 0 评论 -
【Linux】Linux 操作系统 - 13 , 深入解析命令行参数与环境变量 !
本文详细介绍了命令行参数和环境变量的相关内容。首先,解释了main函数的参数argc和argv[],展示了如何通过命令行参数控制程序行为。接着,探讨了环境变量的概念,介绍了常见的环境变量及其查看方式,并解释了为什么运行可执行程序时需要./前缀。文章还提供了通过代码获取环境变量的方法,包括使用main函数的第三个参数、系统调用getenv以及全局变量environ。最后,简要提及了bash中的两张表,总结了命令行参数和环境变量的重要性及其在程序中的应用。原创 2025-05-07 11:15:00 · 439 阅读 · 0 评论 -
【Linux】Linux 操作系统 - 12 , 进程的优先级 , 进程是怎样在 CPU 上执行的 ? (切换 , 调度内容)
指 : 进程得到CPU资源的优先顺序!原创 2025-05-05 11:15:00 · 736 阅读 · 0 评论 -
【Linux】Linux 操作系统 - 11 , 进程状态 - 详谈《僵尸进程和孤儿进程》让你彻底明白 !
本篇将会对进程的状态进行详细的介绍 , 其中包括僵尸进程 , 孤儿进程 , 等状态!原创 2025-04-30 11:30:00 · 904 阅读 · 0 评论 -
【Linux】Linux 操作系统 - 10 , 进程的创建 , 详解 fork 系统调用 ! 面试可能考哦 ~~~~
本篇将会对进程是如何创建的 , 进程中的系统调用 — fork 详解!原创 2025-04-28 11:30:00 · 420 阅读 · 0 评论 -
【Linux】Linux 操作系统 - 09 , 一文搞懂操作系统与进程 , 快速入门初识 !
本篇文章笔者将会进入进程部分的概念讲解以及了解操作系统 , 正式进入操作系统部分的内容 !原创 2025-04-28 11:15:00 · 848 阅读 · 0 评论 -
【Linux】Linux 操作系统 - 08 , ProgressBar.sh: Linux编程从入门到动画竟然如此简单 ?
本篇文章笔者将会给大家介绍一个非常好玩的 Linux 系统方面的程序 ---- ProgressBar , 即 : 进度条程序 . 笔者会从基础部分慢慢铺垫来完成该程序的编写!原创 2025-04-24 11:15:00 · 766 阅读 · 0 评论 -
【Linux】Linux 操作系统工具 , 代码跃迁:从 Git 入门到云端托管 ! Git 入门这么简单 ?
本篇文章将会给大家介绍到 git 这个基本工具的基础使用 , git 相关命令!原创 2025-04-21 20:08:55 · 856 阅读 · 0 评论 -
【Linux】Linux 操作系统 - 07 , make命令 和 makefile文件 , 超详细讲解 ! 程序员必会工具 !
本篇会讲解 make / makeflie 所涉及内容以及进行一个小实验 , 即 : 进度条程序的编写!●要使用 Makefile 就要先建 Makefile 文件!这里文件名Makefile / makefile 都可以!不区分大小写 .依赖关系就是: 我要干什么事 , 我靠谁?, 这个过程就是依赖关系 , 即 : 形成依赖 . 例如 : Makefile 文件中的 ,原创 2025-04-21 11:15:00 · 940 阅读 · 0 评论 -
【Linux】Linux 操作系统 - 06 , 带你深入理解 gcc /g++ 原理 ! 超全 !
本篇将会将以下内容 , 初识 gcc / g++ , gcc 是怎么进行编译的? 进行了哪些过程?原创 2025-04-19 16:14:22 · 356 阅读 · 0 评论 -
【Linux】Linux 操作系统 - 04 ,Linux 权限竟然这么好玩 ? 带你彻底了解权限 !
权限 , 是 Linux 系统中占比很重的一部分 , 我们玩 Linux 最重要的就是权限问题 , 这就意味要详细掌握权限相关知识 , 本篇将对权限部分系统讲解!以上是对权限部分内容的笔记记录 , 包含了大部分知识点 , 上面最重要的就是知识点的理解!原创 2025-04-15 20:29:36 · 175 阅读 · 0 评论 -
【Linux】Linux 操作系统 - 03 ,初步指令结尾 + shell 理解
本篇文章 , 笔者记录的笔记内容包含 : 基础指令 、重要热键 、shell 初步理解 、权限用户的部分问题。内容皆是重要知识点 , 需要认真理解!~~以上是本节内容笔记 , 笔者也在不断学习中 , 会不断更新学习笔记!感兴趣的伙伴 , 可持续关注哦!原创 2025-04-09 12:10:23 · 231 阅读 · 0 评论 -
【Linux】Linux 操作系统 - 02 , 有关重定向等重要知识点 , 必会 ~ 必会 ~
本篇接续 Linux 知识专题 , 本节将会讲到重定向 , 文件操作一些相关的知识点 .以上是笔者的本次学习 Linux 的总结笔记 ~ 后续还会不断更新!原创 2025-04-07 11:30:00 · 497 阅读 · 0 评论 -
【Linux】Linux 操作系统 - 01 , 10 + 个重要知识点 , 必会 ~ 必会 ~
本文是笔者学习 Linux 中的重要知识点总结 , 以知识点为主 , 命令很少涉及 , 笔者也是 Liunx 初学者 , 写本系列皆是为了后续更好复习 , 质量不高勿喷 ~ .以上笔者学习完的总结笔记 , 有问题请指正!原创 2025-03-30 11:45:00 · 348 阅读 · 0 评论 -
Linux 操作系统 --- 初识指令 - 2 - 重要知识点和相关实验项目
本篇文章笔者会继续收集初识部分重要知识点 , 同时这些知识点也是学习 Linux 必须了解且掌握的 . 笔者也会对相关知识点进行实验 , 通过实验进一步深刻理解 .以上是本节的相关内容, 知识点为重要部分!原创 2025-02-16 08:45:00 · 594 阅读 · 0 评论 -
Linux 操作系统 --- 初识指令重要知识点
本章节笔者将会进入全新的内容 ----- Linux 操作系统的相关知识讲解 .本文章图均出自笔者飞书 :Linux 指令以上是笔者整理的 Linux 初始知识点 , 是较为重要的内容 , 完成的文章请跳转笔者飞书文档进行查看!原创 2025-02-07 09:47:27 · 182 阅读 · 0 评论