2013年7月5日

UNIX环境高级编程——时间和日期

摘要: 由UNIX内核提供的基本时间服务是计算自国际标准时间公元1970年1月1日00:00:00以来经过的秒数。这种秒数是以数据类型time_t表示。 1. time函数返回当前时间和日期:time_t time(time_t *calptr); 时间值总是作为函数返回。... 阅读全文

posted @ 2013-07-05 17:53 胡永光 阅读(153) 评论(0) 推荐(0) 编辑

UNIX环境高级编程——Linux进程地址空间和虚拟内存

摘要: 一、虚拟内存分段机制:即分成代码段,数据段,堆栈段。每个内存段都与一个特权级相关联,即0~3,0具有最高特权级(内核),3则是最低特权级(用户),每当程序试图访问(权限又分为可读、可写和可执行)一个段时,当前特权级CPL就会与段的特权级进行比较,以确定是否有权限访问。每个特权级都有自己的程序栈,当... 阅读全文

posted @ 2013-07-05 17:19 胡永光 阅读(267) 评论(0) 推荐(0) 编辑

UNIX环境高级编程——标准I/O库函数和Unbuffered I/O函数

摘要: 以写文件为例,C标准I/O库函数(printf(3) 、putchar(3) 、fputs(3) )与系统调用write(2) 的关 系如下图所示。 库函数与系统调用的层次关系open 、read 、write 、close 等系统函数称为无缓冲I/O(Unbuffered I/O)函数,因为它... 阅读全文

posted @ 2013-07-05 16:55 胡永光 阅读(109) 评论(0) 推荐(0) 编辑

UNIX环境高级编程——标准I/O库缓冲区和内核缓冲区的区别

摘要: 1.C标准库的I/O缓冲区 UNIX的传统 是Everything is a file,键盘、显示器、串口、磁盘等设备在/dev 目录下都有一个特殊的设备文件与之对应,这些设备文件也可以像普通文件(保存在磁盘上的文件)一样打开、读、写和关闭,使用的函数接口是相同的。用户程序调用C标... 阅读全文

posted @ 2013-07-05 13:21 胡永光 阅读(126) 评论(0) 推荐(0) 编辑

UNIX环境高级编程——标准I/O库

摘要: 对一个进程预定义了三个流,并且这三个流可以自动的被进程使用,它们是:标准输入、标准输出、和标准错误。 标准I/O库提供缓冲的目的是尽可能减少使用read和write的次数。 标准I/O库提供了三种类型的缓冲:(1)全缓冲:在填满标准I/O缓冲区后进行实际I/O操作。对于驻留在磁... 阅读全文

posted @ 2013-07-05 12:09 胡永光 阅读(134) 评论(0) 推荐(0) 编辑

导航