- 9
- 0
- 约2.81万字
- 约 31页
- 2018-01-08 发布于江西
- 举报
Linux高级程序设计(第二版)笔记.doc
linux高级程序设计(第二版)笔记
第六章 文件管理
文件系统结构
超级块 :文件的基本信息如大小相当于封面
Inode块:数据的索引相当于目录
数据块 :内容
文件类型
常规文件: -
目录文件: d
字符设备文件: c
块设备文件: b
符号链接文件:l 硬链接是文件-
套接字文件:s
管道文件:p
文件修饰位:s 即setuid,setgid可以获得所有者的权限
类型测试:
int isfdtype(int _fd,int _fdtype)
文件属性管理
读取文件属性:
stat(路径,buf指针)
返回值:成功0,错误-1
lstat( )读取链接文件本身属性
fstat( )读取已打开文件的属性
修改文件权限:
chmod(文件名,mode)
返回值:成功0,错误-1
fchmod( )
lchmod( )
修改系统umask值:
创建普通文件时默认的权限为 0666-umask
_mode_t getumask(void)
_mode_t umask(_mode_t mask)
返回值:原系统的umask
example: umak(0666)
修改拥有者及组
int chown(路径,拥有者,所属组)
返回值:成功0,错误-1
fchown()
lchown()
链接文件
硬链接:
int link(source path, destination path)
返回值:成功0,错误-1
int unlink (source path)
软链接:
int symlink(source path, destination path)
返回值:成功0,错误-1
int readlink(file path, path buf * ,size of buf)
function:读取软链接的原文件路径到buf
文件时间
const struct utimbuf:包含.actime(access time),.modtime
int utime(const char *filename, const struct utimbuf *buf);
第七章 进程管理与设计
第一节 进程环境及进程属性
进程资源
struct task_struct 记录了进程的信息如内存,tty,当前目录,打开的文件描述符,PID,PPID,UID,EUDI
进程状态
TASK_RUNNING
TASK_INTERRUPTIBLE
TASK_UNINTERRUPTIBLE
TASK_ZOMBIE
TASK_STOPPED
进程基本属性
PID
ps aux:查看系统所有进程
_pid_t getpid(void)
返回值:失败-1
PPID
_pid_t getppid(void)
PGID:进程组ID
_pid_t getpgrp(void)
_pid_t getpgid(_pid_t _pid)
_pid: 0:获取当前进程的组ID ;否则为指定进程的PGID
int setpgid(pid_t pid,pid_t pgid)
pid:要跳槽进程的ID:若为0则为当前进程
pgid:要跳槽的组ID:若为0则新建了一个组其PGID=PIP
pid= pgid:则提升为进程组组长
进程只能为自己或者子进程设置PGID,若子进程调用了exec函数则子进程PGID也不能动
组员组号PGID就是组长的PID
会话(session)
Def:一个或多个进程组的集合
_pid_t getsid(_pid_t _pid)
ret:一般就是PGID
_pid_t setid(void)
Fun: 创建新会话
Note:若组长进程调用就会出错;非组长进程调用会创建新会话并成为会话首进程(session leader)即新建组的组长PGID=PID
控制终端
一个会话可以有一个终端,由会话首进程控制。
会话中进程组:有一个前台进程组,其余则是后台进程组,控制终端对应一个会话组。
Ctrl+C/Delete:发送中断信号给前台进程组的所有进程。
Ctrl+\:发送退出信号给前台进程组的所有进程。
pid_t tcgetpgrp(int filedes)
Fun:获取终端filedes的前台进程PGID
Ex: tcgetpgrp(fd)
pid_t tcsetpgrp(int fileds,pid_t pgrpid)
Fun:将pgrpid组提升为前台组
进程用户属性
进程真实用户号(RUID)
_uid_t getuid(void)
进程有效用户号(EUID)
_uid_t geteuid(void)
Note:如果可执行文件的se
您可能关注的文档
最近下载
- 桥面系人行道施工方案.docx VIP
- 深川CHINSC S200系列通用矢量变频器说明书.pdf VIP
- (高清版)B-T 230.2-2022 金属材料 洛氏硬度试验 第2部分:硬度计及压头的检验与校准.pdf VIP
- 2024部编版初中历史八年纪上全册重点知识点归纳总结(复习必背).docx VIP
- 2025年招标师信息化与系统集成项目招标方案设计专题试卷及解析.pdf VIP
- 美妆直播间布置方案.docx VIP
- 2025年课件-(已瘦身)大学生创新创业基础(创新创业课程)PPT完整全套教学课件-新版.pptx
- 辽宁省建设工程系列专业技术资格评审标准.pdf VIP
- 2025年10月自考14444小学教师专业发展.试题及答案.pdf VIP
- 七下历史教学计划.docx VIP
原创力文档

文档评论(0)