
简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
本文系统阐述了进程创建、写时拷贝、进程退出与等待、程序替换及自定义Shell实现的核心机制。通过fork创建子进程,利用写时拷贝实现高效内存共享;进程退出时通过exit或_exit返回码传递结果,父进程使用wait/waitpid回收资源并解析状态;程序替换通过exec系列接口实现代码与数据的动态加载,支持跨语言执行;最终以模拟实现简易Shell,完整演示命令解析、子进程创建、程序替换与内建命令处

冯诺依曼体系结构将计算机分为输入、内存、CPU、输出四部分,数据在设备间通过内存流动。程序需加载至内存才能运行,因CPU仅与内存交互。操作系统作为软硬件桥梁,管理进程、内存、文件与设备,通过系统调用提供安全接口。进程是运行中的程序,由PCB(task_struct)和代码数据组成,状态包括运行、阻塞、僵尸等。进程切换依赖寄存器上下文保存与恢复,调度算法基于优先级与时间片实现。内存用于平衡速度与成本

本文系统介绍了文件与目录的基本概念,强调Linux中“一切皆文件”的理念,涵盖路径结构、权限管理(拥有者、所属组、other)、权限位(rwx)及umask对默认权限的影响。重点解析了目录权限规则:进入需x权限,查看需r权限,新建/删除文件需w权限。通过su、sudo实现用户切换与提权,保障多用户隔离与安全。介绍共享目录的粘滞位(t)机制,防止非拥有者随意删除文件,典型应用如/tmp目录。同时讲解
本文详细讲解了C语言程序的编译和链接过程。首先介绍了翻译环境和执行环境的概念,指出源代码需要经过编译链接生成可执行程序。随后深入分析了翻译环境的三个阶段:预处理(处理宏、头文件等)、编译(词法/语法/语义分析生成汇编代码)、汇编(转换为机器指令)。重点说明了链接阶段如何通过重定位解决多文件间的符号引用问题。最后补充了预处理阶段的细节,包括预定义符号、#define定义常量和宏等内容,帮助读者全面理








