
Linux
文章平均质量分 95
Linux相关知识
折木`
知道的越多,不知道的也越多
展开
-
信号处理的基本过程
我们知道信号的递达方式共有三种,默认,自定义捕捉和不处理,默认和不处理的过程比较简单,先不谈。本文我带大家分析一下信号捕捉的基本过程。 1. 信号递达是立即发生的吗? 我们来先看这样一段代码: #include <stdio.h> int main() { int arr[100]; int i = 0; for(; i < 200; i++) { arr[i] = i; } printf("run here!?\n"); return 0; }原创 2021-07-22 18:12:57 · 4385 阅读 · 3 评论 -
进程间通信---system V 共享内存
文章目录1. 认识共享内存1.1 概念1.2 共享内存示意图2. 共享内存函数2.1.ftok2.1.1 功能2.1.2 声明2.1.3 实例2.2. shmget2.2.1 功能2.2.2 声明2.2.3 实例2.3 shmctl2.3.1 功能2.3.2 声明2.3.3 实例2.4 shmat函数2.4.1 功能2.4.2 声明2.5 shmdt函数2.5.1 功能2.5.2 声明2.5.3 实例3. 进程间通信3.1 common.h(头文件)3.2 server.c(服务器)3.3 client.c原创 2021-07-09 16:24:49 · 398 阅读 · 0 评论 -
【Linux】-CentOS 7 动静态库生成打包原理及使用
文章目录1. 动静态库的概念2. 动静态链接原理2.1动态链接原理2.2 静态链接原理2.3 总结3. 静态库的打包及使用3.1 链接的本质3.2 静态库打包3.3 静态库使用4. 动态库的打包及使用4.1 动态库打包4.2 动态库的使用 1. 动静态库的概念 静态库(.a):程序在 编译链接 的时候把库的代码链接到可执行文件中。程序运行的时候将不再需要静态库 动态库(.so):程序在 运行 的时候才去链接动态库的代码,多个程序共享使用库的代码。 我们都知道一个操作系统本身就会自带许多动静态库文件,一般原创 2021-06-05 10:28:41 · 1001 阅读 · 1 评论 -
【Linux】 - 深度理解进程地址空间
测试环境 Linux kernel 2.6.32 32位平台 文章目录1.程序地址空间回顾2. 地址空间的“领地意识”3. 地址空间是物理内存吗?4. 虚拟地址空间5. 为什么要存在地址空间?好处1:保护内存好处2:将空间连续化处理6. 地址空间的本质 1.程序地址空间回顾 相信大家在学习C/C++或者其它语言的时候,一定见到过一幅类似于这样空间布局图: 语言阶段我们应该是将这幅图称之为“程序地址空间分布图”,不过这幅图可能和你在学习语言阶段所见到的图有些许的差别。大家以前见到的图应该不是完整的,那是原创 2021-05-05 19:52:08 · 590 阅读 · 2 评论 -
【Linux】-剖析目录权限+粘滞位
本篇文章我将向大家详细介绍Linux中两个非常重要的知识点目录权限以及粘滞位,这两点也是在面试中经常会被问到的两个问题,我会尽自己最大的努力来让大家有所收获。 1. 目录的三大权限 可读权限: 如果目录没有可读权限, 则无法用ls等命令查看目录中的文件内容. 可写权限: 如果目录没有可写权限, 则无法在目录中创建文件, 也无法在目录中删除文件. 可执行权限: 如果目录没有可执行权限, 则无法cd到目录中. 下面我们先来通过几个例子来感受一下目录的三种权限。 1.1 可读权限 dir1是当前路径下的一原创 2021-03-22 11:43:24 · 361 阅读 · 1 评论