01 2013 档案

摘要:8~11章主要讲进程相关的内容。 进程标示符(PID),0是调度进程,1通常是init进程,2一般是页守护进程(pagedaemon),负责虚拟内存的分页操作。 #include <unistd.h> pid_t getpid(void); pid_t getppid(void);//parent pid uid_t getuid(void); uid_t geteuid(void); g... 阅读全文
posted @ 2013-01-27 16:45 生无所息 阅读(234) 评论(0) 推荐(0) 编辑
摘要:本章学习进程环境,主要是一些编译器、系统与程序直接的结合等方面的知识。常识部分略过,记录一些要点。main中return语句实质上仍然调用exit函数。使用atexit函数注册返回回调函数,其注册顺序与实际调用顺序相反。环境变量相关:全局变量environ可以直接读取环境变量表,函数getenv,setenv,putenv和unsetenv可以用来操作环境变量。#include <stdlib.h... 阅读全文
posted @ 2013-01-20 19:24 生无所息 阅读(173) 评论(0) 推荐(0) 编辑
摘要:本章学习系统数据文件的接口,以及系统标识函数、时间和日期等信息函数。口令文件:/etc/passwd#include <pwd.h>struct passwd{char *pw_name;//用户名*char *pw_passwd;//加密口令uid_t pw_uid;//user id*gid_t pw_gid;... 阅读全文
posted @ 2013-01-19 22:02 生无所息 阅读(182) 评论(0) 推荐(0) 编辑
摘要:本章学习ISO C,和一般C语言书籍中的内容大同小异,不过加入了Unix一些特有的扩展。流#include <stdio.h>#include <wchar.h>int fwide(FILE *fp, int mode);若mode=0,该函数确定流是否使用了宽字符集(注意不是Unicode),宽定向返回正值,字节定向返回负值,未定向返回0;如果流未定向,也可以使用mode参数将之定向;但该函数并... 阅读全文
posted @ 2013-01-19 18:45 生无所息 阅读(199) 评论(0) 推荐(0) 编辑
摘要:今天玩了会Lubuntu,也试了一试最新的codelite,凭良心说codelite做的比code::blocks更好用,虽然功能没有后者强大,但是手感上更类似visual studio,快捷键也相仿。另外code::blocks使用xterm太瞎眼,改为xfce4-terminal,方法是将Environments settings-General settings-Terminal to la... 阅读全文
posted @ 2013-01-16 21:06 生无所息 阅读(362) 评论(0) 推荐(0) 编辑
摘要:本章学习文件I/O。不带缓冲指的是每个读写操作都会调用内核中的一个系统调用。File descriptor相当于win下的文件句柄,一般0:stdin,1:stdout,2:stderr,在依从POSIX标准的系统中,使用宏STDIN_FILENO,STDOUT_FILENO和STDERR_FILENO来确定,最好不用硬编码。文件描述符的取值范围是0~OPEN_MAX。open f... 阅读全文
posted @ 2013-01-14 19:59 生无所息 阅读(267) 评论(0) 推荐(0) 编辑
摘要:毕业前攻克这本基础书吧,虽然不一定做这个,但是这个方向还是很不错的。全书共计21章,这里主要记录要点和自己做的习题解答。编译环境是debian6.0.6+xfce4,用的ide是codeblocks 12.11(刚发布,手感不错,可惜不支持fakevim)Chapter1是综述,各方面的常识提示。工作目录:使用chdir函数更改,默认为~,从passwd文件中用户的登陆项中取得。I/O相关:... 阅读全文
posted @ 2013-01-13 17:02 生无所息 阅读(241) 评论(0) 推荐(0) 编辑