会员
周边
新闻
博问
闪存
赞助商
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
明明1109
博客园
首页
新随笔
联系
订阅
管理
上一页
1
···
13
14
15
16
17
18
19
20
21
···
25
下一页
2021年7月26日
Linux C 字符串查找相关操作 strchr, strstr, strtok
摘要: strchr,strrchr, strchrnul 定位一个字符 strchr系列函数介绍 strchr 定位一个字符在字符串中的位置。 同系列函数有,strrchr,strchrnul。 区别在于: strchr 从左向右找,第一个出现字符c的位置即为所求; strrchr 从右向左找,第一个出现
阅读全文
posted @ 2021-07-26 19:45 明明1109
阅读(3851)
评论(0)
推荐(0)
2021年7月24日
Linux C套接字选项SO_RCVTIMEO, SO_SNDTIMEO
摘要: SO_RCVTIMEO, SO_SNDTIMEO介绍 套接字选项: SO_RCVTIMEO:用来设置socket接收数据的超时时间; SO_SNDTIMEO: 用来设置socket发送数据的超时时间; 一般地,调用accept/connect/send/recv, 进程会阻塞,但是如果对端异常,进行
阅读全文
posted @ 2021-07-24 16:56 明明1109
阅读(14779)
评论(0)
推荐(1)
2021年7月22日
线程与进程, 线程与信号
摘要: 线程与进程 fork子进程如何复制多线程的父进程? 考虑一个问题:父进程在fork之前,已经创建了多个线程,那么再调用fork,新建子进程具有和父进程同样数量的线程吗?是否会复制父进程的所有线程? 答案是否定的。 fork子进程只会复制调用fork的线程,不会复制父进程的其他线程。既然是复制,因而子
阅读全文
posted @ 2021-07-22 16:35 明明1109
阅读(498)
评论(0)
推荐(0)
TCP/IP学习笔记:TCP拥塞控制
摘要: 简介 拥塞指的是 在某段时间,若对网络中某一资源的需求超过了该资源所能提供的可用部分,网络性能就要变坏。这种情况就叫拥塞(congestion)。 TCP模块任务:提供网络利用率,降低丢包率,保证网络资源对每条数据的公平性。 拥塞控制 标准文档:RFC 5681,介绍了拥塞控制4个部分:慢启动(sl
阅读全文
posted @ 2021-07-22 00:17 明明1109
阅读(1417)
评论(0)
推荐(1)
2021年7月21日
Linux fork和vfork
摘要: fork 系统调用 可以通过fork系统调用创建新的进程。调用进程称为父进程,被创建的进程称为子进程。 fork函数复制当前进程,会在内核进程表中创建一个新的进程表项。新的进程表项有很多属性和原进程相同,如堆指针、栈指针、标志寄存器的值。也有许多属性被赋予新的值,如子进程PPID为原来进程PID。
阅读全文
posted @ 2021-07-21 23:40 明明1109
阅读(312)
评论(0)
推荐(0)
2021年7月14日
Linux C创建临时文件mktemp, mkstemp
摘要: mktemp 创建临时文件名 创建一个独特的文件名,每次调用得到的文件名都不一样。 注意:该函数只产生文件名,并不创建文件。 #include <stdlib.h> char *mktemp(char *template); 参数 template 必须是一个字符数组,末尾6个字符必须是"XXXXX
阅读全文
posted @ 2021-07-14 11:13 明明1109
阅读(2971)
评论(0)
推荐(0)
2021年7月8日
Linux C strtok实现自定义字符串切分函数split
摘要: 1. 问题:Linux C如何切分字符串? java的String类有split方法,可以将字符串对象按指定字符串进行切分,返回一个数组String[],包含切分后的所有字符串。 Linux C如何对字符串进行切分呢?有没有类似函数/系统调用? 答:Linux C没有字符串类,也没有split函数,
阅读全文
posted @ 2021-07-08 14:53 明明1109
阅读(2090)
评论(0)
推荐(0)
2021年6月26日
Linux C获取当前工作目录的几种方法
摘要: 获取当前工作目录有多种方式。 1. getcwd 获取工作目录(启动程序的目录) getcwd 可以获取当前工作目录,但不是目标程序所在目录,而是启动程序时所在的工作目录。 比如,如果shell 从工作目录/home/user启动目标程序(位于/home/user/workspace/testpro
阅读全文
posted @ 2021-06-26 20:05 明明1109
阅读(6617)
评论(0)
推荐(0)
2021年6月25日
路由器无线桥接,台式机如何有线连接上网?
摘要: 0. 问题背景 台式机距离路由器比较远,无法只连网线到路由器上网。现在有2个路由器,能否用另外一个路由器连接主路由器上网? 可以用路由器的桥接功能,让副路由器桥接主路由器,然后PC通过网线连接副路由器进行上网。 由于有线桥接较为简单,这里只讲无线桥接。 我配置的桥接拓扑示意图,如下 1. 确定路由器
阅读全文
posted @ 2021-06-25 15:15 明明1109
阅读(13115)
评论(0)
推荐(1)
2021年6月23日
Linux 多进程锁的几种实现方案
摘要: 我们知道,多线程可以用多线程互斥量pthread_mutex_t实现线程之间上锁,那么多进程之间如何共享锁呢? 1. 文件锁实现多进程锁 由于文件锁是存放到位于内存的系统文件表中, 所有进程/线程可通过系统访问。如果不同进程使用同一文件锁(写锁/排他锁),当取得文件锁时,进程可继续执行;如果没有取得
阅读全文
posted @ 2021-06-23 18:03 明明1109
阅读(9814)
评论(0)
推荐(0)
Linux man手册没有pthread_mutex_init的解决办法
摘要: 今天用man命令查看pthread_mutex_init文档,发现没有该条目,而pthread_create却有。 我用的系统是ubuntu14x64,内核是4.2.0-27-generic版本 $ uname -a Linux ubuntu 4.2.0-27-generic #32~14.04.1
阅读全文
posted @ 2021-06-23 16:03 明明1109
阅读(2064)
评论(0)
推荐(1)
2021年6月22日
IP地址结构信息与字符串相互转化:inet_pton和inet_ntop, etc.
摘要: 1. 问题描述 1)假如有一个IPv4地址字符串(点分十进制),如何转化为socket编程所需的sockaddr地址结构信息? 2)假如通过getaddrinfo等方式,已经取得了sockaddr地址结构信息,如何转化为字符串形式?(点分十进制 for IPv4, 冒号十六进制 for IPv6)
阅读全文
posted @ 2021-06-22 10:22 明明1109
阅读(9446)
评论(0)
推荐(0)
2021年6月16日
Linux 将计算md5值功能做成md5命令
摘要: 参考: linux MD5 Linux 自带md5sum命令, 可用于计算和检查md5 1. 利用md5sum生成md5值 $ echo -n '123456' | md5sum # -n 命令阻止自动换行 2. 制作成脚本 文件md5 #!/bin/bash echo -n $1 | md5sum
阅读全文
posted @ 2021-06-16 22:08 明明1109
阅读(655)
评论(0)
推荐(0)
2021年6月14日
Unix/Linux inet守护进程
摘要: 1. 服务器模型存在的问题 典型Unix系统可能存在许多服务器, 都只是等待客户请求的到达, 如FTP, Telnet, Rlogin, TFTP等. 4.3BSD之前, 这些服务都有一个进程与之关联. 这些进程在系统自举阶段(bootstrap), 从/etc/rc文件中启动, 且每个进程执行几乎
阅读全文
posted @ 2021-06-14 22:32 明明1109
阅读(258)
评论(0)
推荐(0)
2021年6月13日
Unix/Linux syslogd守护进程 & 日志记录syslog
摘要: 1. syslogd守护进程 我们知道, 守护进程(daemon)是 在后台运行且不与任何控制终端关联的进程. 参见: Linux 系统编程学习笔记 - 终端、作业控制与守护进程 守护进程章节. 那么如何得知守护进程的状态, 和某些事情发生呢?守护进程如何输出消息, 或者告知管理员? 可以调用sys
阅读全文
posted @ 2021-06-13 22:39 明明1109
阅读(2073)
评论(0)
推荐(0)
UNP 学习笔记 #11 名字与地址转换
摘要: 11.1 概述 用IP地址数值表示的主机, 端口标识服务器, 不容易记住, 而用名字表示比较容易记住. 另外, 数值地址可以变动, 而名字保持不变, 而且手工键入IP地址也很容易出错. 这就引入了域名系统 - 名字与地址间的转换. 名字和数值地址间进行转换的函数, 也是本章主要内容: gethost
阅读全文
posted @ 2021-06-13 15:57 明明1109
阅读(476)
评论(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
阅读(150)
评论(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
阅读(409)
评论(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
阅读(1844)
评论(0)
推荐(0)
2021年6月8日
Linux C一个简单的线程池示例: 固定数目线程池
摘要: 1. 目标 Linux C编写一个简单的固定数目的线程池, 实现向线程池添加任务并执行的功能. 2. 固定数目线程池fixedthreadpool 类似于java的newFixedThreadPool, 线程池中的子线程数目固定, 在创建时由用户, 可以用一个线程队列来描述. 当用户需要用线程池执行
阅读全文
posted @ 2021-06-08 21:14 明明1109
阅读(598)
评论(3)
推荐(0)
上一页
1
···
13
14
15
16
17
18
19
20
21
···
25
下一页
公告