
Linux
文章平均质量分 76
薛定谔的猫的┗|`O′|┛ 嗷~~
记录生活,记录学习!
展开
-
printf缓冲区问题
缓冲区可能不会被刷新,导致输出不会显示。在这种情况下,您可以尝试在程序的关键位置手动刷新缓冲区,或者使用调试工具来排查程序崩溃的原因。如果您需要更精确的控制输出缓冲区的刷新时机,可以考虑使用。函数使用的缓冲区大小可能会影响刷新的时机。如果输出内容较少,缓冲区可能不会被填满,因此即使遇到换行符,函数的输出将被缓冲到文件中,而不是立即显示在终端上。在这种情况下,您可以手动刷新缓冲区,或者在每次。默认使用无缓冲,输出内容直接刷新显示在终端上。函数也不会立即刷新缓冲区并显示输出。时才会刷新缓冲区并显示在终端上。原创 2024-02-06 10:15:01 · 532 阅读 · 0 评论 -
deb格式软件包
Depends:本软件包依赖的其他软件包即要求的版本(如果借助 apt 命令安装 deb包的时候,就会先安装依赖,在安装本软件包)。② 安装信息及控制脚本包,包含 deb 的安装说明,标识,脚本等,文件名为 control.tar.XXX。③ postinst文件,安装后做的处理,如目录权限、属组修改、通过脚本启动后台服务等,非必选。② preinst文件,安装前做一些初始化工作,如目录创建,文件创建,配置文件初始化、① control文件,用于记录软件包名称,[版本号],平台,依赖信息等数据,必选。原创 2024-02-05 18:27:25 · 3173 阅读 · 0 评论 -
gdb调试
gdb调试用表格记录一下常用的gdb调试命令,方便以后使用。只列举了部分的gdb调试命令,但已足够%90的需求。功能命令简写详细描述用例启动gdbstart只执行一步nextn单步执行,直接执行完函数体,不进入函数体内部steps单步执行,可以进入函数体内部continuec直接执行到断点查看代码listll 行号(函数名)当前文件第几行或函数l 10l 文件名: 行号(函数名)指定文件第原创 2021-07-14 14:31:29 · 187 阅读 · 0 评论 -
进程间通信IPC
IPCIPC(Inter-Process Communication,进程间通信)。进程间通信是指两个进程的数据之间产生交互。1、管道1.1基本概念管道是一种最基本的IPC机制,作用于有血缘关系的进程之间,完成数据传递。调用pipe系统函数即可创建一个管道。本质是一个伪文件(实为内核缓冲区)。有两个文件描述符,一个表示读端(fd[1]),一个表示写端(fd[0])。规定数据从管道的写端流入,从读端流出。双向半双工。原理:管道实为内核使用环形队列机制,借助内核缓冲区(4k)实现。缺点:原创 2021-07-14 14:30:21 · 171 阅读 · 0 评论 -
Linux下的信号
信号1、信号的概念共性简单。不能携带大量信息。满足某个特设条件才能发送。机制A给B发送信号,B收到信号前执行自己的代码,收到信号好后,不管执行到程序的什么位置,都要暂停运行, 去处理信号,处理完毕再继续运行。与硬件中断类似,但信号是软件层面上实现的终端,常称为“软中断”。每个进程收到的所有信号,都是由内核负责发送的,内核处理。阻塞信号集(信号屏蔽字)将某些信号加入集合,对他们设置屏蔽,当屏蔽x信号后,再收到该信号,该信号的处理将推后(解除屏蔽后),未决信号集的对应信号位置将不再立原创 2021-07-14 14:26:30 · 241 阅读 · 0 评论 -
Makefile概述
Makefile基本概念makefile是一个代码管理工具,它定义了一系列的规则来指定那些文件需要先编译,哪些文件需要后编译,哪些文件需要重新编译。最大的好处就是,只要把makefile写好,然后执行一个make命令就完成所有的编译了。不然每次编译都要敲一大串命令,很容易把我们累死。例如:gcc *.c -Include ./ -Wall -g -O3 -D DEBUG -Lmakefile的命名makefile命名只有两种情况,任选其一即可:makefile、Makefile。makef原创 2021-07-14 14:21:46 · 196 阅读 · 0 评论 -
Linux下线程的使用
Linux下线程的使用1、Linux线程在早期的类Unix系统中是没有“线程”概念的,这是后面需求的才延伸出来的,它借助了进程机制实现出了线程的概念。因此在这类系统中,进程和线程关系密切。在Linux环境下的线程本质上还是进程,属于轻量级的进程(LWP:light weight process)。实际上,无论是创建进程的fork,还是创建线程的pthread_create,底层实现都是调用同一个内核函数clone。fork复制对方的地址空间,产生一个“进程”;pthread_create原创 2021-07-14 14:11:36 · 300 阅读 · 0 评论 -
进程、线程
进程、线程1、什么是进程、线程进程是一个程序被加载到内存执行的过程,它是一个动态的概念。线程是程序执行中一个单一的顺序控制流程,是程序执行流的最小单元。进程是操作系统分配资源的最小单位,线程是操作系统调度执行的最小单位。打个比喻,操作系统是好像一个大工厂,工厂里面的一条条流水线就是一个个的进程,然后流水线上的工人负责整个流水作业的全部或者一小部分,这就叫线程。进程是真正的“打工人”,干活的实体。2、进程和线程的区别进程有自己独立的地址空间(每个进程都有拥有4GBytes的虚拟地址空间),多个线程原创 2021-07-14 14:08:56 · 118 阅读 · 0 评论 -
Linux创建新用户
**以Ubuntu16.04为例创建新用户**本文利用Ubuntu系统新建一个普通用户。adduser命令新建用户删除线格式1.adduser新建用户sudo是为了获取创建权限,新建的用户名为:advance_user,输入完sudo adduser advance_user这条指令后会让你输入root用户密码。yiheng@yiheng-virtual-machine...原创 2019-02-28 14:24:27 · 22224 阅读 · 0 评论