08 2010 档案
摘要:1.程序的运行每个程序在运行main函数之前,都会有一个start-up routine运行。这个程序的地址在链接的时候,由链接器将它的地址写入程序的起始地址。这个程序会将命令行变量与环境变量准备好,再调用main函数。2.程序的终止有以下几种方式令一个程序退出:1.从main函数中return2.调用 exit 3.调用 _exit 或者 _Exit4.从最后一个线程中返回5.最后一个线程调用 ...
阅读全文
摘要:1.密码文件 每个系统都会有一个文件统一记录用户名与密码,通常是/etc/passwd。关于这个文件有: root 的 uin 通常为 0 . 文件中的 x为占位符,代表真实的加密密码保存在另外的文件。没有这一列的时候,表示该用户没有设立密码。 将用户对应的shell设为/dev/null时,可以防止该用户登入系统。同时,如果将shell指向/bin/false或者/bin/true,则直接向用户...
阅读全文
摘要:1.FILE对象FILE对象包含文件描述符,指向缓冲池的指针,缓冲的大小,已经读入的字节数,错误标志,EOF标志等等。2.缓冲缓冲的目的是尽可能地减少read和write的调用次数,提升IO系统的性能。总共有三种缓冲方式: 2.1 全缓冲,fully buffered.文件将全量进入缓冲,这是大多数使用的缓冲方式。 2.2 行缓冲,line buffered.通常使用在终端的输入输出。 2....
阅读全文
摘要:1.stat , fstat , lstatint stat( const char * restrict pathname , struct stat * restrict buf ) ;int fstat ( int filedes , struct stat* restrict buf ) ;int lstat ( const char * restrict pathname , struc...
阅读全文
摘要:1.文件描述符 在内核中,每个打开的文件都是一个文件描述符,每个文件描述符都是一个非负整数,从0到OPEN_MAX。在UNIX系统中,总是将0与标准输入关联,1与标准输出关联,而2与标准错误输出关联,但是这不是所有的程序与shell都是坚持的标准,因此最好使用POSIX定义的STDIN_FILENO,STDOUT_FILENO与STDERR_FILENO来表示。2.打开文件:int open( c...
阅读全文
摘要:1.Unix 的标准1.1 ISO C1.2 POSIX( Poratble Operationg System Interface )POSIX包含了ISO C中的标准程序1.3 Single Unix Specification2.Unix的实现2.1 Unix SystemV Release 4 , AT&T's Unix System Laboratories2.2 4.4BSD ...
阅读全文
摘要:1.定义 The UNIX system architecture : 2.登录过程:登录的帐户与密码记录于/etc/passwd中,每一行由七个元素组成: 用户名,加密后的密码,用户ID,群ID,comment,home目录,默认shell有些系统将密码放到另外的文件中。根用户的UserID为0。群信息存储在 /etc/group3.文件系统由文件夹与文件组成,文件夹与文件一样,都保存着相关的属...
阅读全文