首页 » 编程

Socket的4种模型

一、模型比喻
1. 同步Sockets
1个护士照顾一位病人,直至病人出院再照顾下位病人。
缺点:后来想住院的等得花儿都谢了。
2. 多线程 同步Sockets
多位护士照顾多位病人,每位护士照顾病人出院再照顾下位病人。
缺点:医院开销太大。
3. 异

Git服务器Gitosis架设指南

Git是非常著名的分布式版本控制系统。
Gitosis则是方便通过Git与ssh架设中央服务器的软件。这篇文章的安装流程写得很明了,但使用中还是遇到了些许问题,本文算是该流程的补充。如果打算通过Gitosis架设服务器通过本文或许可以少走不少弯路。
一、架

Glibc 学习 –18. Syslog

Syslog 是linux下用于log记录和管理的工具
一、原理
Syslogd接收log信息,并按照/etc/syslog.conf的配置并进行相应的记录
二、相关函数
syslog.hopenlog设定syslog的属性syslog记录closelog

Glibc 学习 –16. Sockets

一、什么是Sockets
在GNU中,Sockets为一个文件描述符,不同于pipes,Socket支持通过网络进行的异地通信。著如telnet,ftp等均可通过sockets访问。
二、通信类型
通信类型主要分以下三种SOCK_STREAM可靠双向基于

Glibc 学习 –14. 文件系统

一、工作目录
unistd.hgetcwd得到工作路径chdir切换工作路径fchdir通过文件描述符切换路径
二、目录控制
1. 函数
struct direntDIRopendir打开一个目录fdopendir通过描述符打开目录dirfd通过DIR

Glibc 学习 –10. 模式匹配

一、通配符匹配
fnmatch
匹配: 0
不匹配: FNM_NOMATCHFNM_FILE_NAME/有特殊含义FNM_PATHNAME= FNM_FILE_NAMEFNM_PERIOD.有特殊含义FNM_NOESCAPE\没有特殊含义FNM_LEAD

Glibc 学习 – 9. 搜索与排序

search.h
一、比较回调函数
int comparision_fn_t(const void *, const void *)其中的const void *指向的是所比较参数,比如所比较的是const char*(字串),那么const void *

理解C的const

首先C的变量通常可定义为2部分,变量类型,变量对象。
比如 char *p;
可以理解成 char* p, p是一个指针,
也可以理解成 char *p, *p是一个字符。
而我采用的是2的理解方式。
其次对于c来说
const char 与 char c

Glibc 学习 – 6. 字符集控制

早期电脑每个字符只有8位,但8位已无法适应各种非罗马字符的需求,于是引入了多字节概念。
一、扩展字符的介绍
wchar.h
GNU中的wchar_t一直为32位wchar_twint_t单个wchar字符WCHAR_MINwint_t的最小值WCHAR_M

Vim中的正则表达式

正则表达式是非常有用的工具,同样Vim也支持正则,在正则的帮助下文字处理事半功倍。
一、描述
pattern ::= branch
or branch \| branch
or branch \| branch \| branc