//-----------------------------------1.getsockopt和setsockopt--------------------------------------
#include
int getsockopt(int sockfd, int level, int optname, void* optval, socklen_t* optlen);
int...
分类:
其他好文 时间:
2014-07-22 23:03:55
阅读次数:
329
使用UDP编写的一些常见的应用程序有:DNS(域名系统),NFS(网络文件系统),SNMP(简单网络管理协议)。
//---------------------------------1.recvfrom函数和sendto函数----------------------------------
#include
ssize_t recvfrom(int sockfd, voi...
分类:
其他好文 时间:
2014-05-10 10:14:46
阅读次数:
466
ISO C标准I/O库使用流的概念读写文件。流是对数据传输的抽象,可以把流理解为从起点到终点间的字节序列。
标准I/O库通过维护进程空间内的缓冲区,减少read/write系统调用次数来提高I/O效率。之前介绍的Unbuffered I/O和文件描述符fd打交道,标准I/O则使用FILE指针。
typedef struct{
short level;/*缓冲区满程度*/
uns...
分类:
其他好文 时间:
2014-05-10 09:37:37
阅读次数:
388
1.main函数C程序总是从main函数开始执行,当内核执行C程序时,在调用main函数之前先调用exec函数从内核获取命令行参数和环境变量值2.进程终止正常终止:(1)在main函数内执行return语句(2)调用exit(3)最后一个线程从其启动例程返回(4)最后一个线程调用pthread_ex...
分类:
其他好文 时间:
2014-05-08 11:28:22
阅读次数:
300
1. Unix
体系结构内核的接口被称为系统调用公用函数库构建在系统调用接口之上应用软件既可以调用公用函数库,也可以直接进行系统调用2.
文件和目录目录操作函数:opendir---> readdir---> closedirstruct dirent 结构体stat
系统调用3.程序、进程、线程程...
分类:
其他好文 时间:
2014-05-07 18:08:40
阅读次数:
415
1.
文件I/O对于内核而言,所有打开的文件都通过文件描述符引用,内核不区分文本文件和二进制文件open函数:O_RDONLY O_WRONLY
O_RDWRcreate函数:close函数:关闭一个文件时还会释放该进程加在该文件上的所有记录锁lseek函数:显式地为一个打开的文件设置其偏移量每个打...
分类:
其他好文 时间:
2014-05-07 17:54:42
阅读次数:
297
1. 文件类型,文件类型信息包含在 struct stat 里的 st_mode
成员(1)普通文件,unix内核并不区分文本文件和二进制文件(2)目录文件,这种文件包含了其他文件的名字以及指向这些文件有关信息的指针(3)块特殊文件(4)字符特殊文件(5)FIFO,
常用于进程间通信,也称为管道(6...
分类:
其他好文 时间:
2014-05-07 09:27:44
阅读次数:
430
常见系统数据文件
下表列出了常见的系统数据文件及其查找函数。
以/etc/passwd文件为例,读取数据的程序框架如下:
void get_pw_entry()
{
struct passwd *ptr;
setpwent();
while ((ptr = getpwent()) != 0) {
……
}
endpwe...
分类:
其他好文 时间:
2014-05-07 08:46:54
阅读次数:
341
1.流与FILE对象unix
I/O系统调用都是针对文件描述符的标准C的I/O函数都是针对流(文件指针)的,我们使用一个流与一个文件相关联2.缓冲标准I/O库提供缓冲的目的就是尽可能减少read和write系统调用的使用次数标准I/O提供三种类型的缓冲:(1)
全缓冲:在填满标准I/O缓冲区后才进行...
分类:
其他好文 时间:
2014-05-07 01:35:27
阅读次数:
321
本章关注单进程运行环境:启动&终止、参数传递和内存布局等。
进程启动终止
如图所示:
启动:内核通过exec函数执行程序,在main函数运行之前,会调用启动例程(start-up routine),取得命令行参数和环境变量。可以把启动例程理解为exit(main(argc,argv))。终止:五种正常终止方式(从main方法返回/exit/_exit/最后一个线程返回/最...
分类:
其他好文 时间:
2014-05-06 22:03:53
阅读次数:
514