UNIX系统基础文件I/O操作全解析
1. umask系统调用
在UNIX系统中,每个进程都有一个文件模式创建掩码,可通过 umask 系统调用进行设置。该调用通常仅由 umask 命令使用,其原型如下:
#include <sys/stat.h>
mode_t umask(
mode_t cmask /* new mask */
);
/* Returns previous mask (no error return) */
由于每个进程都有掩码,且九位的任意组合都是合法的,所以 umask 不会返回错误。它总是返回旧的掩码。若要在不改变掩码的情况下获取旧掩码,需要调用两次 umask :第一次以任意参数调用获取旧值,第二次将掩码恢复原状。
2. unlink系统调用
unlink 系统调用用于从目录中移除一个链接,同时将i - 节点中的链接计数减1。若链接计数变为0,文件系统会丢弃该文件,释放其占用的磁盘空间,并使i - 节点可被复用。该进程必须对包含该链接的目录具有写权限。其原型如下:
#include <unistd.h>
int unlink(
const char *path /* pathname */
);
/* Returns 0 on success or -1 on error (se
超级会员免费看
订阅专栏 解锁全文
6949

被折叠的 条评论
为什么被折叠?



