会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
明明1109
博客园
首页
新随笔
联系
订阅
管理
上一页
1
···
13
14
15
16
17
18
19
20
21
···
25
下一页
2021年6月14日
Unix/Linux inet守护进程
摘要: 1. 服务器模型存在的问题 典型Unix系统可能存在许多服务器, 都只是等待客户请求的到达, 如FTP, Telnet, Rlogin, TFTP等. 4.3BSD之前, 这些服务都有一个进程与之关联. 这些进程在系统自举阶段(bootstrap), 从/etc/rc文件中启动, 且每个进程执行几乎
阅读全文
posted @ 2021-06-14 22:32 明明1109
阅读(234)
评论(0)
推荐(0)
2021年6月13日
Unix/Linux syslogd守护进程 & 日志记录syslog
摘要: 1. syslogd守护进程 我们知道, 守护进程(daemon)是 在后台运行且不与任何控制终端关联的进程. 参见: Linux 系统编程学习笔记 - 终端、作业控制与守护进程 守护进程章节. 那么如何得知守护进程的状态, 和某些事情发生呢?守护进程如何输出消息, 或者告知管理员? 可以调用sys
阅读全文
posted @ 2021-06-13 22:39 明明1109
阅读(1955)
评论(0)
推荐(0)
UNP 学习笔记 #11 名字与地址转换
摘要: 11.1 概述 用IP地址数值表示的主机, 端口标识服务器, 不容易记住, 而用名字表示比较容易记住. 另外, 数值地址可以变动, 而名字保持不变, 而且手工键入IP地址也很容易出错. 这就引入了域名系统 - 名字与地址间的转换. 名字和数值地址间进行转换的函数, 也是本章主要内容: gethost
阅读全文
posted @ 2021-06-13 15:57 明明1109
阅读(370)
评论(0)
推荐(0)
2021年6月12日
git 使用总结
摘要: 参考 廖雪峰官网Git教程:http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000 一、安装 1. 从官网下载安装包 官网: https://git-scm.com/ 对应github:ht
阅读全文
posted @ 2021-06-12 10:55 明明1109
阅读(131)
评论(0)
推荐(0)
2021年6月11日
AUPE 输出致标准错误的出错函数分析与实现 err_sys, err_quit, err_doit etc.
摘要: 1. 出错函数汇总 AUPE 输出至标准错误的出错函数, 分为以下几个: 函数名 何时调用 功能 err_ret 系统调用相关的非致命错误 打印消息并且返回 err_sys 系统调用相关的非致命错误 打印消息并且终止程序 err_cont 不与系统调用相关的非致命错误 错误码通过显式参数error传
阅读全文
posted @ 2021-06-11 16:41 明明1109
阅读(376)
评论(0)
推荐(0)
Linux C常见数I/O函数比较: printf, sprintf, fprintf, write...
摘要: 1. 输出 1.1 输出格式化字符串 1.1.1 printf 输出格式化字符串到标准输出设备stdout #include <stdio.h> int printf(const char *format, ...); 参数 format 格式化字符串以null终结符结尾 ... 对应format中
阅读全文
posted @ 2021-06-11 15:04 明明1109
阅读(1694)
评论(0)
推荐(0)
2021年6月8日
Linux C一个简单的线程池示例: 固定数目线程池
摘要: 1. 目标 Linux C编写一个简单的固定数目的线程池, 实现向线程池添加任务并执行的功能. 2. 固定数目线程池fixedthreadpool 类似于java的newFixedThreadPool, 线程池中的子线程数目固定, 在创建时由用户, 可以用一个线程队列来描述. 当用户需要用线程池执行
阅读全文
posted @ 2021-06-08 21:14 明明1109
阅读(574)
评论(3)
推荐(0)
UDP 连接
摘要: 1. UDP connect 我们经常说UDP是无连接的传输协议, 如果UDP调用connect呢? 会发生什么? UDP套接字调用connect函数, 跟TCP连接调用connect不一样: 没有三次握手过程. 而且, 内核只是检查是否存在立即可知的错误(e.g. 一个显然不可达的目的地, 由于非
阅读全文
posted @ 2021-06-08 15:06 明明1109
阅读(2581)
评论(0)
推荐(0)
2021年6月7日
Linux socket编程 套接字选项
摘要: 1. 套接字选项概述 有很多方法来获取和设置套接字的选项, 以影响套接字行为: getsockopt和setsocketopt; fcntl; ioctl; 2. getsockopt和setsockopt 2个函数仅用于套接字, 分别用于获取和设置套接字选项 #include <sys/types
阅读全文
posted @ 2021-06-07 01:42 明明1109
阅读(1080)
评论(0)
推荐(1)
2021年6月6日
Linux 软限制和硬限制
摘要: 每个进程的实际实现都有一组资源限制, 可以用getrlimit, setrlimit获取或设置 1. getrlimit和setrlimit getrlimit和setrlimit, 能分别获取/设置当前进程的系统资源限制 #include <sys/time.h> #include <sys/re
阅读全文
posted @ 2021-06-06 17:50 明明1109
阅读(1700)
评论(0)
推荐(0)
Linux shutdown与close
摘要: shutdown和close都可以用来关闭TCP连接, 那么它们有区别与联系呢? 下面来研究下这个问题: 1. close 关闭连接和套接字. 成功返回0; 失败为-1, errno被设置 #include <unistd.h> int close(int fd); close会把描述符(sockf
阅读全文
posted @ 2021-06-06 00:04 明明1109
阅读(482)
评论(0)
推荐(0)
2021年6月4日
Linux 慢系统调用与EINTR(被中断)
摘要: 1. 慢系统调用 UNP 5.9提到, 慢系统调用(slow system call)指不会立即返回的系统调用, 可能永远阻塞而无法返回. 诸如多数网络支持函数, 包括read/write, connect, accept等, 都属于这一类. 慢系统调用, 主要分为以下类别: 读写"慢"设备 包括p
阅读全文
posted @ 2021-06-04 18:33 明明1109
阅读(2508)
评论(0)
推荐(1)
TCP RST标志位
摘要: 1. RST标志位 RST标志位位于TCP报文首部, 其置位时, 表示连线复位,首先断开连接,然后重建. RST置位的分节(TCP数据包), 常称为RST分节. RST不同于close (FIN分节), close用于关闭正常连接, 而RST用于复位异常连接. 参考 TCP报文格式 | CSDN T
阅读全文
posted @ 2021-06-04 17:07 明明1109
阅读(915)
评论(0)
推荐(0)
2021年5月31日
Linux 配置gitee
摘要: 安装好git后, 如何配置连接至gitee ? 首先, 需要在官网注册一个gitee账号, 然后进行以下配置步骤: 1. 设置账号 $ git config --global user.name "your name" 2. 设置邮箱 $ git config --global user.email
阅读全文
posted @ 2021-05-31 17:39 明明1109
阅读(2324)
评论(0)
推荐(0)
2021年5月27日
Linux C errno出错处理
摘要: 1. 出错处理errno 每个进程维护一个全局整型变量errno, 记录系统(调用)的最后一次错误代码. errno及其常量值定义位于<errno.h>. 以前, errno不是线程安全的, 其定义是: extern int errno; 现在, 为支持多线程环境, errno定义是: extern
阅读全文
posted @ 2021-05-27 15:21 明明1109
阅读(1794)
评论(0)
推荐(0)
Linux C进程时间:墙上时钟时间,用户CPU时间,系统CPU时钟时间
摘要: 1. 进程运行时间的概念 如何度量进程的运行时间? 可以用times函数获取进程的墙上时钟时间,用户CPU时间,系统CPU时钟时间。 1.1 墙上时钟时间 墙上时钟时间 wall clock time: 又简称时钟时间,从进程开始运行到结束,系统时钟走过的时间(时钟数),包含了进程阻塞、等待的时间。
阅读全文
posted @ 2021-05-27 01:03 明明1109
阅读(3190)
评论(0)
推荐(0)
Linux C XSI IPC总结框架
摘要:
阅读全文
posted @ 2021-05-27 00:55 明明1109
阅读(154)
评论(0)
推荐(0)
2021年5月25日
编译错误: 对‘aio_read’未定义的引用
摘要: 使用aio的时候, 出现编译问题: 对‘aio_read’未定义的引用( undefined reference to 'aio_read' ). 要如何解决 ? 确认已经include头文件 aio.h; 编译的时候, 链接librt库, 命令: $ gcc async_demo.c -lrt 选
阅读全文
posted @ 2021-05-25 14:35 明明1109
阅读(881)
评论(0)
推荐(0)
Linux 异步IO(AIO)
摘要: 1.select和poll IO多路转换技术, select, poll的原理是: 通过将待监听文件描述符(fd)加入集合, 然后通过查询其调用返回值, 取得数据有动静的fd数量, 再轮询集合中每个fd, 如果有数据, 就直接读取; 如果没有数据, 就等待下一次查询. select和poll实现了异
阅读全文
posted @ 2021-05-25 01:27 明明1109
阅读(2729)
评论(0)
推荐(0)
2021年5月24日
Linux getaddrinfo获得本机ip地址为何127.0.1.1?
摘要: 通过gethostname + getaddrinfo , 得到本机ip地址为127.0.1.1 , 而非127.0.0.1. 为何? 源代码 来源: Linux编程获取本机IP地址的几种方法 int main(int argc, const char **argv) { int ret; char
阅读全文
posted @ 2021-05-24 00:09 明明1109
阅读(1710)
评论(0)
推荐(0)
上一页
1
···
13
14
15
16
17
18
19
20
21
···
25
下一页
公告