Unix学习(六)
来源:互联网 发布:现货倚天屠龙指标源码 编辑:程序博客网 时间:2024/06/14 18:03
umask可以设置权限的屏蔽位,设置的位即使创建文件的时候提供也会被置0,从而修改默认的权限。
find ~ -name “c.*” > /dev/null 2> /dev/null
find ~ -name “c.*” > /dev/null 2>&1
find ~ -name “c.*” >& /dev/null
把标准输出和标准错误都重定向到null设备
fcntl(文件描述符,命令,struct flock*),功能很多但一般用来给文件加锁解锁
其中命令可以是F_SETLK(加锁), F_GETLKF(获得锁信息),F_SETLKW(加锁直到成功为止)
struct flock {
…
l_type:加锁的类型,(F_RDLCK读锁不互斥/F_WRLCK写锁与别的锁排斥独占的/F_UNLCK解锁),对文件的同一段多个读锁是可以共存的,但是多个写锁或着读锁写锁之间是冲突的,不能够共存,谁加锁由谁解)
l_whence/l_start:加解锁的位置,一个是参考点一个是偏移量,指明位置的开始处。
l_len:要加解锁的字节数
l_pid:哪个进程加的锁,F_GETLK命令才有意义,为了系统兼容性赋值为-1就行了
…
}
ioctl调用驱动程序接口,不同的驱动使用的参数及其含义各不相同。
系统:read/write二进制格式数据,
C语言:fread/fwrite,fgetc/fputc,fgets/fputs, fscanf/fprintf,….
C++:ifstream/ofstream
mmap:可以把一个文件映射到内存中,就可以像访问内存一样访问文件。
mmap(addr, len,prot, flag, fd, start),把fd中离文件头offset开始的地方的数据映射到内存addr开始len个字节的数据,返回实际映射成的地址,失败返回-1(MAP_FAILED)。addr一般不指定而是用NULL让系统自动选择合适的地址,len随意但是实际映射的内存会是一页(4K)的整数倍,fd一定要是可读的方式打开,start必须是一页的倍数。prot有几种可选,读写执行PROT_READ,PROT_WRITE,PROT_EXEC(但是一定要与fd的打开方式相容)。flag可以是MAP_ANONYMOUS不使用文件或者置0跟二选一组合MAP_SHARED(如果有多个程序映射了同一个文件可以实现内存共享,引文它们映射了同一个文件的同一个地方)/MAP_PRIVATE(私有:内存和文件内容不同步)。
进程:
getpid()
getppid()
getuid()
getgid()
gethostname(char数组, 数组大小)
ps -f -p pid 显示pid进程的完整信息 ps -e 显示所有进程(默认只显示本终端的进程)
初始化进程init的id为1,
在unix系统里有一个id为0的进程,是调度进程。Linux里是没有这个进程。
- Unix学习(六)
- Unix C (六)
- 老赵弱弱学习——unix环境高级编程(六)
- Unix环境高级编程学习笔记(六) 信号机制
- unix编程(六)线程
- UNIX环境高级编程学习笔记(六)标准I/O库
- UNIX(AIX)系统常用命令(六)
- db2&unix使用总结(六)
- Unix网络编程读书笔记(六)
- C程序设计语言(六)UNIX系统接口
- 《Unix环境高级编程》总结(六)
- 《Unix & Linux 大学教程》 - 第五、六章 学习笔记
- 《Unix & Linux 大学教程》 - 第五、六章 学习笔记
- UNIX环境高级编程学习之路(六)----进程控制
- Unix学习(一)
- Unix学习(二)
- Unix学习(三)
- Unix学习(四)
- html frame实现页面内容动态切换
- diff: /../Podfile.lock: No such file or directory diff: /Manifest.lock: No such file or directory
- [hihocoder 1238] Total Highway Distance(微软2016校园招聘9月在线笔试)
- PHP内核的存储机制(分离/改变)
- CodeForces 18E Flag 2
- Unix学习(六)
- Error running app: Instant Run requires 'Tools | Android | Enable ADB integration' to be enabled.解决方
- Poj 2378 Tree Cutting (树形DP)
- Netlink 获取网卡接口信息
- 【LeetCode-61】Rotate List
- MFC下 DirectInput的实现
- HDU-1176-免费馅饼
- 为一个时间类增加功能(2)
- Java 应用类 - 这些功能再也不用自己写了