摘要: 1.格式FILE*freopen(constchar*filename,constchar*mode,FILE*stream);2.参数说明filename:要打开的文件名mode:文件打开的模式,和fopen中的模式(r/w)相同stream:文件指针,通常使用标准流文件(stdin/stdout... 阅读全文
posted @ 2015-11-17 17:36 程序之心 阅读(1672) 评论(0) 推荐(0) 编辑
摘要: 一、域名系统1、域名系统概述 域名系统DNS(Domain Name System)是因特网使用的命名系统,用来把便于人们使用的机器名字转换成为IP地址。域名系统其实就是名字系统。为什么不叫“名字”而叫“域名”呢?这是因为在这种因特网的命名系统中使用了许多的“域(domain)”,因此就出现了... 阅读全文
posted @ 2015-11-16 19:02 程序之心 阅读(280) 评论(0) 推荐(0) 编辑
摘要: 一、linux中的进程名 linux中有很多查看/操作进程的命令。这些命令的参数或显示的结果,有的是真实的进程名(top/pstree/pgrep/kill/killall),有的是进程的命令行参数(ps)。 例如:有一个进程a.out,运行方式为:./a.out arg1 arg2 这时如果... 阅读全文
posted @ 2015-11-15 19:50 程序之心 阅读(3637) 评论(1) 推荐(0) 编辑
摘要: 经四处查找,终于发现原因:(1)attr.mq_maxmsg 不能超过文件 /proc/sys/fs/mqueue/msg_max 中的数值,我的机器上面是10。(2)attr.mq_msgsize不能超过 /proc/sys/fs/mqueue/msgsize_max 的数值。(3)消息队列名称前... 阅读全文
posted @ 2015-11-13 21:40 程序之心 阅读(1488) 评论(0) 推荐(0) 编辑
摘要: 一、函数mq_open头文件mqueue.h;原型mqd_t mq_open(const char *name, int oflag, .../*mode_t mode,struct mq_attr* attr*/);函数功能创建消息队列;参数name:消息队列的名字,根据消息队列的规则,为了更好的... 阅读全文
posted @ 2015-11-13 21:17 程序之心 阅读(767) 评论(0) 推荐(0) 编辑
摘要: 验证 UNPv2里的一个例子时,连接时出现 undefined reference to 'mq_open' 错误。man mq_open ,发现里面有这么一句话 :link with -lrt 。加上 -lrt 后,连接成功。运行,出现 Permission deny。继续查,man mq_ove... 阅读全文
posted @ 2015-11-13 21:12 程序之心 阅读(2767) 评论(0) 推荐(0) 编辑
摘要: 1、前言 为了使程序方便扩展,具备通用性,可以采用插件形式。采用异步事件驱动模型,保证主程序逻辑不变,将各个业务已动态链接库的形式加载进来,这就是所谓的插件。linux提供了加载和处理动态链接库的系统调用,非常方便。本文先从使用上进行总结,涉及到基本的操作方法,关于动态链接库的本质及如何加载进来,... 阅读全文
posted @ 2015-11-05 19:28 程序之心 阅读(396) 评论(0) 推荐(0) 编辑
摘要: 不知道什么时候,就开始有了让HomeServer支持PHP的念头。于是分析起了FastCGI协议。FastCGI用于WebServer与WebApplication之间的通讯,例如Apache与PHP程序。FastCGI协议数据包是8字节对齐的,由包头(Header)和包体(Body)组成。例如要请... 阅读全文
posted @ 2015-11-03 14:13 程序之心 阅读(3431) 评论(0) 推荐(0) 编辑
摘要: 首先介绍响应的数据,比较简单,再者我们对返回的数据比较敏感……1响应格式如(十六进制方式显示)序列 0 1 2 3 4 5 6 7 ...数值 01 06 00 01 01 1D 03 00...序列0(值01)为version,固定取1即可序列1(值06)为type,代表FCGI_STDOUT,表... 阅读全文
posted @ 2015-11-03 13:42 程序之心 阅读(882) 评论(0) 推荐(0) 编辑
摘要: 1、简介在Linux中,并不存在exec()函数,exec指的是一组函数,一共有6个,分别是:#include extern char **environ;int execl(const char *path, const char *arg, ...);int execlp(const char ... 阅读全文
posted @ 2015-11-03 13:07 程序之心 阅读(577) 评论(0) 推荐(0) 编辑