logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

Re:Linux系统篇(四十九)线程篇 · 二:为什么现代操作系统选择分页式存储?分页如何解决物理内存碎片?分页结构如何演化到页表、页目录、MMU?

本文介绍了Linux系统中分页式存储管理的核心概念。首先分析了物理内存碎片化问题及其解决方案——通过虚拟地址空间和页表实现虚拟连续但物理不连续的内存映射。详细讲解了struct page结构体如何管理物理内存页,重点解析了flags字段表示页状态的作用。文章从内存管理基础出发,逐步深入分页机制原理,为后续理解Linux内存管理奠定基础。

文章图片
#linux#驱动开发#运维
Re:Linux系统篇(四十六)信号篇·四:一文串联操作系统底层:时钟中断、内核态切换、系统调用与 Linux 信号处理全解析

本文主要讲解了Linux信号处理的核心机制,重点分析了信号捕捉的全流程和内核态与用户态的切换原理。文章首先介绍了信号处理的三种方式(忽略、默认和捕捉),并详细描述了用户自定义信号处理函数的执行过程,通过"∞"形流程图形象展示了信号捕捉中内核态与用户态的多次切换。随后深入探讨了信号处理函数执行完毕后如何通过sigreturn系统调用安全返回主程序,以及内核如何修改用户栈实现这一机制。文章还解释了为什

文章图片
#linux#驱动开发
Re:Linux系统篇(三十八)通信篇·三:深入浅出 Linux 命名管道:如何用 FIFO 实现跨进程通话与文件传输

本文介绍了命名管道(FIFO)的基本概念、创建方法及其在实际应用中的两个案例。命名管道解决了匿名管道只能用于有血缘关系进程间通信的局限性,通过文件路径实现无关联进程间的通信。 摘要要点: 命名管道通过文件路径实现进程间通信,允许无关进程共享同一资源 使用mkfifo命令或系统调用创建命名管道 演示了两个实际案例: 模拟通话场景(张三说、李四听) 文件内容传输(面向对象实现) 包含完整的代码示例和测

文章图片
#linux#驱动开发#运维
Re:Linux系统篇(四十四)信号篇·二:Linux 信号的产生原理:硬件异常、软件条件与内核处理机制

重点介绍硬件异常和软件条件两类信号产生方式: 硬件异常产生信号 CPU通过中断机制捕获硬件异常(如除0错误、野指针访问)并通知操作系统 常见信号包括SIGFPE(8)浮点异常和SIGSEGV(11)段错误 MMU内存管理单元通过页表项权限位检测非法访问 操作系统通过CR2寄存器等获取错误上下文并决定是否终止进程 软件条件产生信号 管道读端关闭时写端会收到SIGPIPE信号 alarm()系统调用设

文章图片
#linux#驱动开发#运维
C++程序员转型Java ,3天打破惯性思维的硬核速成指南

本文为C++程序员快速上手Java提供了三天的学习指南。文章首先强调Java并非简化版C++,而是具有不同的设计哲学:Java通过虚拟机、垃圾回收和强类型约束来限制危险操作。接着对比了两者在编译方式、内存管理、跨平台等方面的差异,并给出了第一个Java程序示例。 第二部分重点讲解数据类型,包括基本类型与包装类的区别,以及自动装箱拆箱的注意事项。第三部分介绍类与对象,展示Java类定义与C++的相似

文章图片
#c++#java#开发语言
Re:Linux系统篇(三十七)通信篇·二:深入理解匿名管道:父子进程是如何“看到同一个文件”

本文介绍了Linux匿名管道的原理与实现,主要内容包括: 匿名管道原理:匿名管道是最古老的进程间通信方式,本质是让不同进程共享操作系统提供的文件资源。通过pipe()系统调用创建内存级管道文件,父子进程通过继承文件描述符表共享同一管道。 单向信道构建: 父进程创建管道后fork子进程 父子进程分别关闭不需要的读写端(父关写/子关读) 形成父读子写的单向通信信道 实现示例: 子进程每秒向管道写入计数

文章图片
#linux#驱动开发#运维
Claude Code上手指南:安装、部署、接入大模型

《从零部署Claude Code:安装配置与实战指南》摘要 本文详细介绍了Claude Code的完整部署流程。首先需要安装Node.js、Git、VPN和CCSwitch等前置工具,随后通过npm或官方文档安装Claude Code并进行配置优化。文章特别演示了如何接入DeepSeek国产大模型,包括API Key获取和CCSwitch配置。最后通过实战案例,展示如何用Claude快速开发Web

文章图片
Re:Linux系统篇(三十六)通信篇·一:进程间通信概念与环境切换

本文介绍了进程间通信(IPC)的概念及其重要性,指出由于进程的独立性,需要通过特定机制实现数据交换。IPC主要用于数据传输、资源共享、事件通知和进程控制。文章详细讲解了如何通过VSCode连接云服务器进行远程开发,包括安装Remote-SSH插件、配置连接参数等步骤,并推荐了相关辅助插件。最后解释了VSCode远程开发时自动在服务器端安装的vscode-server组件的作用,为远程开发提供支持。

文章图片
#linux#运维#服务器
【别传:Web前端开发(二)】重塑视觉视界:CSS核心机理与弹性排版全景草稿

本文系统讲解CSS核心技术,涵盖样式分离本质、选择器精准定位、盒模型原理及Flex布局精髓。主要内容包括:CSS基础语法与三种引入方式(内部/行内/外部样式表)的优缺点;四大基础选择器(标签/类/ID/通配符)的使用场景;复合选择器的层级调用逻辑;重点剖析em单位、RGB颜色模型、box-sizing属性等核心概念,并深入解析Flex布局的双轴坐标系与空间分配机制。通过结构化知识图谱,帮助开发者掌

文章图片
#前端#css
Re:Linux系统篇(三十)文件篇·三:以简驭繁的终极秩序:Linux 虚拟文件系统(VFS)与“一切皆文件”的破局哲学

Linux VFS虚拟文件系统与设备模型架构解析 摘要 本文深入探讨了Linux系统中的文件重定向机制与虚拟文件系统(VFS)架构。首先分析了标准错误(stderr)存在的必要性,通过实验演示如何分离标准输出和错误输出。其次详细解析了文件描述符和struct file结构体的底层原理,揭示了进程与文件的解耦设计。最后深度剖析了Linux"一切皆文件"哲学背后的VFS实现机制,包括设备驱动模型与文件

文章图片
#linux#驱动开发#运维
    共 27 条
  • 1
  • 2
  • 3
  • 请选择