Linux
文章平均质量分 83
学习Linux指令,Linux系统编程和网络编程、Linux内核
4C++
记录C++体系的学习
展开
-
匿名管道及其应用
匿名管道是一种在具有亲缘关系的进程间进行单向通信的方式。它主要用于父子进程之间的数据传递。Linux指令中的 | 就是在使用匿名管道:用于查找当前系统中所有包含字符串。原创 2024-05-12 21:51:37 · 1158 阅读 · 0 评论 -
进程间通信:连接不同程序世界的桥梁
在计算机编程的领域中,进程间通信(Inter-Process Communication,IPC)是一个至关重要的概念。当我们在操作系统中运行多个程序或进程时,它们往往需要相互协作、交换信息,而这就是进程间通信发挥作用的地方。想象一下,在一个复杂的系统中,可能有多个进程同时运行,比如一个图形界面程序、一个数据处理程序和一个网络通信程序。它们各自承担着不同的任务,但有时需要共享数据、协调行动或发送信号。没有有效的进程间通信机制,这些进程就会如同孤立的岛屿,无法高效地协同工作。原创 2024-05-11 23:25:24 · 675 阅读 · 0 评论 -
深入理解 Linux 文件系统与动静态库
我们可以通过配置/etc/ld.so.conf.d/的方式解决该问题,/etc/ld.so.conf.d/路径下存放的全部都是以.conf为后缀的配置文件,而这些配置文件当中存放的都是路径,系统会自动在/etc/ld.so.conf.d/路径下找所有配置文件里面的路径,之后就会在每个路径下查找你所需要的库。其实无论是动态库还是静态库,都是把一堆源文件编译处理出的.o文件(二进制文件)整理在一起,在加上这些源文件对应的头文件,就是一个完整的库了,这样既隐藏了库的源代码,也能让其他开发者使用这个库的功能。原创 2024-05-09 22:16:44 · 1502 阅读 · 0 评论 -
Linux中文件描述符与重定向的深入探索
在Linux操作系统中,文件描述符和重定向是处理文件输入/输出(IO)操作的两个核心概念。本文将深入探讨这两个概念,帮助您更好地理解它们的工作原理以及在实际应用中的使用。原创 2024-04-23 22:05:10 · 732 阅读 · 0 评论 -
进程的虚拟地址空间
对于C/C++程序员,我们看到的程序中的地址,都不是物理地址,而是操作系统映射的虚拟地址/线性地址,每一个进程都映射了同样结构的虚拟地址空间,让进程以为自己在独享内存资源,下图是以Linux下32位操作系统的虚拟地址空间分布图:平时程序中定义的静态局部变量,真的存放在函数栈帧里吗?并不是,而是存放在全局变量区域中,即.data段、.bss段堆栈两块区域是相对生长的,heap区域随着内存的分配向上申请内存资源;而stack区域在申请分配内存时则是向下生长的,但是注意,是!原因是什么呢?原创 2023-10-17 23:07:49 · 767 阅读 · 0 评论 -
Vim教程
Vim是一款高度可定制的文本编辑器,它的前身是Vi,但又在Vi的基础上做了很多改进和增加。Vim是自由软件,在类Unix系统中常被使用。虽然Vim需要一定的学习才能掌握,但其掌握之后可以非常高效地进行文本编辑。Vim以类似于在普通编辑器中移动光标的方式进行文本编辑,这种编辑方式被称为“命令模式”。除此之外,Vim还提供了“插入模式”和“底行模式”,可以让你在插入文本或在执行命令时更方便地操作。正常模式、命令模式、底行模式、编辑模式、视觉模式原创 2023-10-08 18:02:50 · 467 阅读 · 0 评论 -
Linux常用指令
用思维导图简单呈现初学Linux时常用到的指令,这个思维导图会随着我自己的学习进度逐渐完善可以对照本篇目录查缺补漏。常用Linux指令原创 2023-05-25 22:24:23 · 79 阅读 · 0 评论 -
Linux基本指令(二)
在Linux系统中,指令(Command)就是一个可执行程序。通过指令,我们可以向计算机发出命令并让计算机执行相应的操作,例如创建文件、移动文件、删除文件等等。指令是Linux系统的基础,掌握好指令的使用是学习Linux的第一步。原创 2023-05-03 14:21:57 · 775 阅读 · 0 评论 -
Linux基本指令(一)
Linux是一款自由、开源的操作系统,拥有强大的功能和灵活的配置。在学习Linux时,了解和掌握基本指令是非常重要的。本文将介绍Linux中常用的基本指令,包括:ls指令、pwd命令、cd指令、touch指令、mkdir指令和rm指令。原创 2023-04-20 22:31:31 · 424 阅读 · 0 评论