linux
文章平均质量分 77
coding快乐
技术渣渣,需要多学习才能进步。
展开
-
使用Linux下的bind9替代WindowsAD中的WinDNS的方法
bind9是有ISC开发的一套开源的DNS服务软件。是使用最为广泛的DNS服务软件,是DNS的事实标准。原创 2023-08-27 17:13:44 · 559 阅读 · 1 评论 -
nghttp2编译引起的gcc升级笔记
序言公司最近项目的业务需要,需要使用nghttp2这个开源库。所以从github.com上下载了一个release版本的nghttp2,然后通过源码进行编译安装。编译和编译出错定位与解决下载源码包: wget https://github.com/nghttp2/nghttp2/releases/download/v1.42.0/nghttp2-1.42.0.tar.xz解压:xz -d nghttp2-1.42.0.tar.xz && tar xf nghttp2-1.42.0.原创 2021-01-04 19:05:42 · 1496 阅读 · 0 评论 -
pkg-config使用笔记
简介pkg-config用于返回系统中已安装库的元信息。pkg-config对库元信息查询是通过在指定目录中去查询xxx.pc文件,从xxx.pc文件中解析得到库对元信息。pkg-config搜索路径默认路径: 通过命令"pkg-config --variable pc_path pkg-config"获取。xxx:~$ pkg-config --variable pc_path pkg-config/usr/lib64/pkgconfig:/usr/share/pkgconfigxxx:~原创 2020-12-30 18:11:02 · 1278 阅读 · 0 评论 -
zsh修改终端PS1的PROMPT显示
前言我们使用的linux、macOS等linux或unix系的操作系统上都有很多shell。我们常见的有bash、zsh、ksh、csh等。通常操作系统都有一个默认的shell作为用户在命令行终端操作时使用。如:bash。查看操作系统支持的shell命令如下:~ $ cat /etc/shells # List of acceptable shells for chpass(1).# Ftpd will not allow users to connect who are not using#原创 2020-11-22 16:22:15 · 4783 阅读 · 0 评论 -
epoll学习笔记1
简介epoll是同poll相似的,用于同时监听多个fd上的相关I/O事件。epoll相较于poll而言有边缘触发和水平触发两种事件触发模式,poll只有水平触发一种事件触发模式。事件触发模式介绍水平触发水平触发(Level-Triggered)是当被监控的fd上有可读写事件发生时,epoll_wait会通知程序去读写。如果程序在这次操作没有将数据全部读写完(可能由于缓冲区不够),那么下次调用epoll_wait时仍然会通知程序去读写,直到数据被读写完为止。优点: 开发时每次读写操作只需要读写想要的原创 2020-11-11 19:11:37 · 819 阅读 · 0 评论 -
select和pselect学习笔记
简介select、pselect用于同步I/O多路复用。select、pselect允许程序同时监听多个fd,直到其中一个或多个fd上有对应的I/O操作就绪时,或超时时才返回。函数原型介绍辅助宏函数FD_CLRvoid FD_CLR(int fd, fd_set *set);从集合set中删除fdFD_ISSETint FD_ISSET(int fd, fd_set *set);判断集合set中是否已经设置了fdFD_SETvoid FD_SET(int fd, fd_set *原创 2020-11-10 11:15:49 · 1099 阅读 · 0 评论 -
gcc对数组初始化对扩展
背景今天研究一个问题时看linux的内核代码,偶然间发现一段有趣的代码。直接上图:从图中代码可以看出这是一个int数组,并且对该数组进行了初始化。但有意思的是本代码中数组初始化中使用了数组下标,并且还可以批量初始化。用例测试用例代码文件名称test.c内容:#include <stdio.h>#define TEST_MAX 10static int test_int_arr[TEST_MAX] = { [0 ... TEST_MAX-1] = -1, [原创 2020-11-06 18:00:02 · 709 阅读 · 0 评论 -
shell和lua之间相互调用以及数据交互
测试环境说明操作系统[xxxx@localhost lua]$ cat /etc/redhat-release CentOS Linux release 7.2.1511 (Core) [xxxx@localhost lua]$ uname -aLinux localhost.localdomain 3.10.0-327.el7.x86_64 #1 SMP Thu Nov 19 22:10:57 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux[xxxx@local原创 2020-10-23 15:43:37 · 6320 阅读 · 0 评论