![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Linux
文章平均质量分 62
玖先生
这个作者很懒,什么都没留下…
展开
-
字节对齐(实战版)
什么是字节对齐 计算机存储的基本单位是字节(byte),但在读写内存的时候,我们并非一个字节一个字节的读取,而是2,4,8的倍数来读取,所以就对基本数据类型的地址做出了一些限制,它的地址也必须是2,4,8的倍数。那么数据类型就需要按照一些规则在空间上进行排列,这样就产生对齐。对齐原则规则1:结构体变量的首地址能够被其对齐字节数大小所整除规则2:结构体每个成员相对结构体首地址的偏移都是成员大小的整数倍,如不满足,对前一个成员填充字节以满足规则3:结构体的总大小为结构体对最大成员大小的整数倍,如不原创 2021-12-24 09:34:07 · 775 阅读 · 0 评论 -
动态库和静态库
使用库文件的优点项目代码更加简洁,没有过多的源文件需要管理保护项目代码,以库的方式提供给使用者,使用者无法知道源代码静态库静态库的制作对源文件编译得到.o文件(加参数 -c)ar进行打包,生成.a静态库文件gcc *.c(源文件) -c ar rcs libxxx.a *.o - c 创建一个库--创建 - s 创建目标文件索引--编号索引 - r 库中插入模块静态库的使用需要静态库文件和对应头文件gcc main.c -o app -L 库的路径(绝对或者相对都原创 2021-12-24 09:29:00 · 690 阅读 · 0 评论 -
IPC-管道
管道进程间通信的方式之一本质是对内核缓冲区的读写,存储在一个环形队列中管道对应的内核缓冲区的大小是固定的,默认为4KB管道分为读写两端,数据从写端进入管道,从读端流出管道管道中的数据只能读一次,相当于出队列管道是单工的,数据单向流动,从写端到读端对管道的读写操作都是阻塞的读管道:当管道中没有数据,读操作阻塞;有数据阻塞解除写管道:写满后,写操作阻塞;有空闲后,继续写入管道的分类匿名管道:只能实现血缘关系的进程间通信创建匿名管道#include <unistd.h&原创 2021-12-23 14:01:10 · 254 阅读 · 0 评论 -
三次握手-四次挥手
1.TCP TCP 是一种面向连接的单播的,可靠的,流式传输协议,位于网络模型的传输层,为应用程序间提供数据传输。2.TCP 连接的建立和终止1.服务器调用socket,bind ,listen 完成初始化,服务器做好准备等待外部的TCP连接的到来,这种方式为被动打开,这个时候服务器处于LISTEN状态,等待客户端的连接请求。2.客户端通过connect发起主动打开,向服务器发出连接请求,发送请求标识位SYN=1,同时发送初始化序号seq=x.SYN报文不允许携带数据,消耗一个序号。原创 2021-12-23 13:46:23 · 1283 阅读 · 0 评论 -
shell脚本简单总结
1.shell脚本的执行1.给脚本赋予执行权限后,./xxx.sh2. . xxx.sh3. source xxx.sh2.shell变量1.环境变量 printenv 显示当前shell进程下的环境变量2.本地变量 设置本地变量 VAR=10 VAR1="hello" 使用本地变量 $VAR $VAR1 本地变量变成环境变量 export VAR=10 取消本地变量 unset VARset 查看shell进程的本地变量和环境变量没有定义的变量取值是空字.原创 2021-12-23 13:36:44 · 112 阅读 · 0 评论 -
openssl-1.1.1g移植编译
依赖包的信息过程安装OpenSSL的时候因为新环境的GLIC版本太低,就需要安装高版本的。高版本的GLIC依赖的包中,本机的ld,as,gcc版本太低,所以需要先升级这三个依赖包。ld,as依赖包通过binutils版本包进行升级,binutils的安装参考文档gcc需要单独的进行升级,非常耗时,在安装的过程中会报错,需要安装相关的依赖包``gcc需要的依赖包为flex-2.6.4.1.tar.gz,而flex依赖的包为m4-1.4.13.tar.gz编译安装openssl步骤:wi原创 2021-12-23 13:18:59 · 1492 阅读 · 0 评论 -
大小端与网络字节序
1.大小端大端字节序:高地址储存在低位小端字节序:高地址存储在高位2.判断#include <stdio.h>int main(){ int a = 1; char ch = *(char*)&a; if(ch) printf("little\n"); else printf("big\n"); return 0;}3.共用体判断#include <stdio.h>unio原创 2021-12-23 13:09:57 · 515 阅读 · 0 评论