linux
文章平均质量分 77
从0开始学习掌握linux
方便面不加香菜
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Linux--线程控制
本文介绍了POSIX线程库的基本使用方法和线程控制技术。主要内容包括:线程创建和终止的三种方式;线程等待和资源释放;线程ID的概念及其在进程地址空间中的布局;通过C++封装线程类实现更便捷的线程管理。文章还提供了详细的代码示例,演示了线程创建、终止、等待等操作,并比较了pthread_self()获取的线程ID与内核LWP线程ID的区别。最后展示了如何利用C++的function和bind机制封装可复用的线程类,支持设置线程名称等高级特性。原创 2026-07-21 18:00:00 · 200 阅读 · 0 评论 -
Linux线程概念
本文围绕Linux线程与内存管理展开,核心在于阐明线程的本质、优缺点及其与进程的差异,并深入底层存储机制。文章通过分页式存储管理(包括虚拟地址、页表及二级页目录结构)解释其独立访问内存的硬件基础,同时提及缺页异常含义。文章对比了进程与线程的资源共享(如地址空间、文件描述符)与独占部分(如栈、寄存器),总结出线程具有创建快、切换开销小等优点,但也存在同步复杂、健壮性差等缺点,并探讨了线程异常对进程的影响及主要应用场景,最终通过一系列问题深化对两者关系的理解。原创 2026-07-12 12:12:28 · 297 阅读 · 0 评论 -
Linux--进程间通信
本文系统介绍了Linux系统下的进程间通信机制,重点分析了管道和共享内存两种方式。 文中通过多个完整代码示例(如文件拷贝、客户端/服务器通信)演示了这些IPC机制的实际应用,并比较了它们的特性差异,为开发者选择合适的进程间通信方式提供了实践指导。原创 2026-06-26 15:12:22 · 217 阅读 · 0 评论 -
Linux--库的制作与原理
《C语言静态库与动态库使用指南》 本文详细介绍了Linux系统中静态库(.a)和动态库(.so)的创建与使用方法。静态库在编译时链接到可执行文件中,通过ar工具生成;动态库则在程序运行时加载,需使用gcc的-fPIC和-shared选项编译。文章通过mystdio/mystring示例库演示了从源代码编译、打包到使用的完整流程,特别针对动态库运行时路径问题提供了4种解决方案:系统路径安装、软链接、LD_LIBRARY_PATH环境变量配置及ldconfg配置更新。原创 2026-06-22 21:19:08 · 240 阅读 · 0 评论 -
Linux--基础IO(二)
摘要: 本文探讨了Linux“一切皆文件”的设计理念,通过struct file和file_operations结构体实现统一操作接口,使硬件、进程等资源均可通过文件API访问。重点分析了缓冲区的机制与作用,包括全缓冲、行缓冲和无缓冲三种类型,解释了缓冲区减少系统调用、提升效率的原理。此外,通过自定义MyFile结构体模拟C标准库的FILE实现,展示了缓冲区管理的核心逻辑,并验证了重定向时缓冲策略的影响(如fork导致的多次输出)。最后,设计了一个简化版libc库,演示了文件操作与缓冲区的底层关联。原创 2026-06-13 08:10:27 · 260 阅读 · 0 评论 -
Linux--基础IO(一)
本文系统介绍了Linux文件操作的核心概念和实现方法。首先从文件定义出发,阐述狭义(磁盘存储)和广义(一切皆文件)的理解,指出文件操作本质是对文件属性和内容的操作。然后详细解析C语言文件接口(fopen/fwrite/fread等)的使用方法和实现原理,包括标准输入输出流、文件描述符等概念。重点讲解了系统级文件IO接口(open/read/write/close)及底层机制,深入分析文件描述符分配规则和重定向原理(dup2系统调用)。文章中带大量代码示例展示了文件操作的实现细节原创 2026-06-08 11:03:00 · 197 阅读 · 0 评论 -
Linux--进程控制
本文摘要:本文系统介绍了Linux进程管理的核心概念与技术,包括进程创建、进程终止、进程等待以及进程程序替换。通过详细分析fork函数的工作原理、进程退出码机制、父子进程通信方式,阐述了Linux进程管理的实现原理。文章还提供了一个自主实现的Shell解释器示例,展示了如何结合这些技术构建命令行解释器,包括命令解析、环境变量管理、内置命令处理和执行外部程序等功能。最后通过函数与进程的类比,总结了Linux进程间通信的基本模式。原创 2026-03-02 17:42:49 · 562 阅读 · 0 评论 -
Linux基础开发工具--编译器gcc/g++
本文介绍了GCC编译器的完整编译过程及常用选项。主要包括四个阶段:预处理(-E)、编译(-S)、汇编(-c)和链接(-o),详细说明了各阶段的功能和转换过程。同时对比分析了静态链接与动态链接的区别,以及静态库(.a)和动态库(.so)的特点。文章还列举了GCC的其他常用选项,如生成调试信息(-g)、优化选项(-O0到-O3)、警告控制(-w/-Wall)等,为开发者提供了全面的GCC使用指南。原创 2026-02-10 13:13:18 · 615 阅读 · 0 评论 -
Linux基础开发工具--yum和vim
本文介绍了Linux系统下的软件包管理器和Vim编辑器使用指南。软件包管理器部分详细讲解了yum/apt的基本操作,包括查看、安装、卸载软件包的方法及注意事项,并解释了软件源配置。Vim编辑器部分系统阐述了三种基本模式(命令、插入、底行)及其切换方式,重点讲解了命令模式下的光标移动、文本操作、复制粘贴等核心功能,以及底行模式的文件操作、搜索替换等实用技巧,还介绍了视图模式的批量操作。文章内容详实,涵盖了Linux系统管理和文本编辑的基础知识,适合初学者系统学习。原创 2026-01-28 16:54:31 · 813 阅读 · 0 评论 -
Linux权限的概念
本文摘要:文章首先介绍了Shell命令及其运行原理,说明Shell作为用户与Linux内核交互的桥梁作用。接着详细讲解了Linux权限管理,包括用户分类、文件访问者角色和基本权限。重点阐述了文件权限设置方法:chmod的字符表示法(如u+r)和八进制表示法(如664),以及chown/chgrp修改文件属主和属组。还介绍了umask掩码对默认权限的影响,并特别说明目录权限的特殊性。最后通过粘滞位(t)解决目录中文件删除权限问题,强调权限管理的精细控制对系统安全的重要性。原创 2026-01-19 11:23:54 · 661 阅读 · 0 评论 -
Linux基本指令(2)
本文总结了16个常用Linux命令及其用法:1.文件查看类:more/less、head/tail、grep 2.时间日历类:date、cal 3.文件操作类:find、zip/unzip、tar、rz/sz 4.系统信息类:which/whereis、uname、top 5.其他工具:alias、bc 重点命令包括less(强大分页查看)、tar(重要打包工具)、grep(文本搜索)等,涵盖了文件处理、系统管理和日常运维的常用操作。原创 2026-01-13 22:26:22 · 767 阅读 · 0 评论 -
Linux基本指令(1)
本文摘要: 本文系统介绍了Linux常用基础命令及用法,包括:1.ls命令(列出目录内容,含多种选项参数);2.pwd(显示当前目录);3.cd(切换目录,讲解绝对/相对路径);4.touch(创建文件);5.mkdir(创建目录);6.rmdir/rm(删除空目录/文件目录);7.man(查看命令手册);8.cp(复制文件目录);9.mv(移动/重命名文件);10.cat(查看文件内容)。每个命令详细说明了语法、功能、常用选项和具体示例,帮助用户掌握Linux基础文件操作。原创 2026-01-09 20:40:29 · 834 阅读 · 0 评论
分享