随笔分类 - linux
摘要:管道pipe是半双工的,pipe两次才能实现全双工,使得代码复杂。socketpair直接就可以实现全双工 socketpair对两个文件描述符中的任何一个都可读和可写,而pipe是一个读,一个写 1,使用socketpair,实现进程间通信,是双向的。 2,使用pipe,实现进程间通信 使用pip
阅读全文
摘要:通过ps及top命令查看进程信息时,只能查到相对路径,查不到的进程的详细信息,如绝对路径等。这时,我们需要通过以下的方法来查看进程的详细信息: Linux在启动一个进程时,系统会在/proc下创建一个以PID命名的文件夹,在该文件夹下会有我们的进程的信息,其中包括一个名为exe的文件即记录了绝对路径
阅读全文
摘要:pstack的作用 1). 查看线程数(比pstree, 包含了详细的堆栈信息) 2). 能简单验证是否按照预定的调用顺序/调用栈执行 3). 采用高频率多次采样使用时, 能发现程序当前的阻塞在哪里, 以及性能消耗点在哪里? 4). 能反映出疑似的死锁现象(多个线程同时在wait lock, 具体需
阅读全文
摘要:排查后发现是cmake生成的一个c的文件和c++的文件都包含有main函数 查了后再cmakelist.txt中加了project(${PROJECTNAME} CXX) 指定c++ 就ok了
阅读全文
摘要:网络上比较普遍的答案是apt install -f下载依赖项,但是尝试过没有用 后来尝试把软件源换了一下,换成清华源 然后apt-get update 再下载gdb就正常了 依赖项也会自己安装
阅读全文
摘要:很多代码中,都会判断是否定义__LINUX__宏来判断是否是linux操作系统 我最近发现找不到__LINUX__这个宏,为什么呢 通过查找资料,发现这个宏应该是你使用的编译器定义的,比如gcc 通过 gcc -dM -E - </dev/null就可以发现定义的宏最后我发现我的版本用的是__lin
阅读全文
摘要:1.make加参数-k,作用是编译过程中出错后不会退出而是继续 keepgoing 2.lsof(list open files)是一个列出当前系统打开文件的工具。(在linux环境下,任何事物都以文件的形式存在) 常用参数 -a 列出打开文件存在的进程 -c<进程名> 列出指定进程所打开的文件 -
阅读全文
摘要:linux strip 用来去除目标文件中的一些符号表、调试符号表信息,以减小程序的大小
阅读全文
摘要:本文提供了一个在Windows环境下使用Visual Studio 2013编辑现有源代码并且保持目录结构的方法。本文使用VS2013中文社区版做示例(本版本为免费版,可在VS官网下载),其他版本的VS操作方式类似。打开VS2013,选择【菜单】-【新建】-【从现有代码创建项目】 选择项目类型:Vi
阅读全文
摘要:用find查找根目录下的文件时,比如sudo find . -name \*test,就会出现1000/gfs无权限的情况 用一下方法可以正常使用 sudo find . -name test 2> /dev/null,把错误的信息输出到null即可
阅读全文
摘要:用 deepin 安装 u 盘启动,出现选择安装语言的界面时,按 ctrl+alt+T,进入 tty,然后输入 startx,进入 live cd 模式,挂载硬盘的根分区,然后修改 /etc/fstab 文件,把里面的 /home 分区里的启动项注释掉。mount 命令在开始时会读取这个文件,确定设
阅读全文
摘要:1. ctrl+v 去选中代码块,按下=号,代码块对齐 命令行模式下 输入:1,16 left会左对齐
阅读全文
摘要:https://blog.csdn.net/qq_43041976/article/details/88544632 https://www.cnblogs.com/bpf-1024/p/11597000.html https://www.cnblogs.com/yhjoker/p/9831671.
阅读全文
摘要:注册后台服务后都有脚本存在/lib/systemd/system路径下 如mysql为mysql.service 被service管理的进程被杀掉还是会重启的 应使用service XXX stop停止 下面是一个简单的后台运行程序的service文件 启动服务 service leshan-ser
阅读全文
摘要:Linux kernel里面从来就不缺少简洁,优雅和高效的代码 比如,通过限定写入的数据不能溢出和内存屏障实现在单线程写单线程读的情况下不使用锁。因为锁是使用在共享资源可能存在冲突的情况下。还用设置buffer缓冲区的大小为2的幂次方,以简化求模运算,这样求模运算就演变为 (fifo->in & (
阅读全文
摘要:devel 包主要是供开发用,至少包括以下2个东西: 有的还含有开发文档或演示代码。 以 glib 和 glib-devel 为例: 如果你安装基于 glib 开发的程序,只需要安装 glib 包就行了。 但是如果你要编译使用了 glib 的源代码,则需要安装 glib-devel。
阅读全文
摘要:在linux系统中安装软件的其中一种:源码安装的方法是,先输入./configure,然后输入make,最后make install。或许有人留意到没有,这些软件的根目录中开始是没有Makefile的,在执行了./configure后会生成了很多奇怪名字的文件. configure是一个脚本,它能设
阅读全文
摘要:centos下下载工具为yum,对应的源在/etc/yum.repos.d/CentOS-Base.repo文件下,修改其URI中前面的网络地址即可
阅读全文
摘要:思想就是整个网段ping一遍,对于ping不通的,解析其失败的字符来判定 首先用到了字符串的截取
阅读全文

浙公网安备 33010602011771号