Unix编程常见问题解答57

上传人:大米 文档编号:491516188 上传时间:2022-12-30 格式:DOC 页数:58 大小:95.50KB
返回 下载 相关 举报
Unix编程常见问题解答57_第1页
第1页 / 共58页
Unix编程常见问题解答57_第2页
第2页 / 共58页
Unix编程常见问题解答57_第3页
第3页 / 共58页
Unix编程常见问题解答57_第4页
第4页 / 共58页
Unix编程常见问题解答57_第5页
第5页 / 共58页
点击查看更多>>
资源描述

《Unix编程常见问题解答57》由会员分享,可在线阅读,更多相关《Unix编程常见问题解答57(58页珍藏版)》请在金锄头文库上搜索。

1、Unix编程常见问题解答问题目录 * (译者:这里我有意保存原文以便于查询) 1. Process Control 进程控制 1.1 Creating new processes: fork() 创立新进程:fork函数 1.1.1 What does fork() do? fork函数干什么? 1.1.2 Whats the difference between fork() and vfork()? fork函数与 vfork函数的区别在哪里? 1.1.3 Why use _exit rather than exit in the child branch of a fork? 为何在一个

2、fork的子进程分支中使用_exit函数而不使用exit函数? 1.2 Environment variables 环境变量 1.2.1 How can I get/set an environment variable from a program? 我怎样在程序中获得/设置环境变量? 1.2.2 How can I read the whole environment? 我怎样读取整个环境变量表? 1.3 How can I sleep for less than a second? 我怎样睡眠小于一秒? 1.4 How can I get a finer-grained version

3、of alarm()? 我怎样得到一个更细分时间单位的alarm函数版本(译者注:希望alarm的时间小于一秒)? 1.5 How can a parent and child process communicate? 父子进程如何通信? 1.6 How do I get rid of zombie processes? 我怎样去除僵死进程? 1.6.1 What is a zombie? 何为僵死进程? 1.6.2 How do I prevent them from occuring? 我怎样防止它们的出现? 1.7 How do I get my program to act like

4、a daemon? 我怎样使我的程序作为守护程序运行? 1.8 How can I look at process in the system like ps does? 我怎样象ps程序一样审视系统的进程? 1.9 Given a pid, how can I tell if its a running program? 给定一个进程号(译者注:pid: process ID),我怎样知道它是个正在运行的程序? 1.10 Whats the return value of system/pclose/waitpid? system函数,pclose函数,waitpid函数 的返回值是什么?

5、1.11 How do I find out about a process memory usage? 我怎样找出一个进程的存储器使用情况? 1.12 Why do processes never decrease in size? 为什么进程的大小不缩减? 1.13 How do I change the name of my program (as seen by ps)? 我怎样改变我程序的名字(即“ps看到的名字)? 1.14 How can I find a process executable file? 我怎样找到进程的相应可执行文件? 1.14.1 So where do I

6、 put my configuration files then? 那么,我把配置文件放在哪里呢? 1.15 Why doesnt my process get SIGHUP when its parent dies? 为何父进程死时,我的进程未得到SIGHUP信号? 1.16 How can I kill all descendents of a process? 我怎样杀死一个进程的所有派生进程? 2. General File handling (including pipes and sockets) 一般文件操作(包括管道和套接字) 2.1 How to manage multipl

7、e connections? 怎样管理多个连接? 2.1.1 How do I use select()? 我怎样使用select()? 2.1.2 How do I use poll()? 我怎样使用poll() ? 2.1.3 Can I use SysV IPC at the same time as select or poll? 我是否可以将SysV 进程间通信 (译者注:IPC: Interprocess Communications) 与select或poll同 时使用? 2.2 How can I tell when the other end of a connection

8、shuts down? 我怎么知道连接的另一端已关闭? 2.3 Best way to read directories? 读目录的最好方法? 2.4 How can I find out if someone else has a file open? 我怎么知道其他人已经翻开一个文件? 2.5 How do I lock a file? 我怎样锁定一个文件? 2.6 How do I find out if a file has been updated by another process? 我怎么知道一个文件是否已被其他进程更新? 2.7 How does the du utility

9、 work? “du工具程序是怎么工作的? 2.8 How do I find the size of a file? 我怎么知道一个文件的大小? 2.9 How do I expand in a filename like the shell does? 我怎样象shell程序一样将一个文件名中含有的“展开? 2.10 What can I do with named pipes (FIFOs)? 我能用有名管道(FIFOs)(译者注:FIFO: First In First Oout)干什么? 2.10.1 What is a named pipe? 什么是有名管道? 2.10.2 How

10、 do I create a named pipe? 我怎样创立一个有名管道? 2.10.3 How do I use a named pipe? 我怎样使用一个有名管道? 2.10.4 Can I use a named pipe across NFS? 我能基于网络文件系统(译者注:NFS:Network File System)使用有名管道吗? 2.10.5 Can multiple processes write to the pipe simultaneously? 多个进程能否同时向这个管道写执行写操作? 2.10.6 Using named pipes in applicatio

11、ns 在应用程序中使用有名管道。 3. Terminal I/O 终端输入/输出(I/O:input/output) 3.1 How can I make my program not echo input? 我怎样使我的程序不回射输入? 3.2 How can I read single characters from the terminal? 我怎样从终端读取单个字符? 3.3 How can I check and see if a key was pressed? 我怎样检查是否一个键被摁下? 3.4 How can I move the cursor around the scre

12、en? 我怎样将光标在屏幕里移动? 3.5 What are pttys? pttys(pttys:Pseudo-teletypes)是什么? 3.6 How to handle a serial port or modem? 怎样控制一个串行口和调制解调器(译者注:modem: modulate-demodulate) 3.6.1 Serial device names and types 串行设备和类型 3.6.2 Setting up termios flags 设置termios的标志位 3.6.2.1 c_iflag 3.6.2.2 c_oflag 3.6.2.3 c_cflag 3

13、.6.2.4 c_lflag 3.6.2.5 c_cc 4. System Information 系统信息 4.1 How can I tell how much memory my system has? 我怎样知道我的系统有多少存储器容量? 4.2 How do I check a users password? 我怎样检查一个用户的口令? 4.2.1 How do I get a users password? 我怎样得到一个用户的口令? 4.2.2 How do I get shadow passwords by uid? 我怎样通过用户号(译者注:uid: User ID)得到阴影

14、口令文件中的口令? 4.2.3 How do I verify a users password? 我怎样核对一个用户的口令? 5. Miscellaneous programming 编程杂技 5.1 How do I compare strings using wildcards? 我怎样使用通配字符比拟字符串? 5.1.1 How do I compare strings using filename patterns? 我怎样使用文件名通配模式比拟字符串? 5.1.2 How do I compare strings using regular expressions? 我怎样使用正那

15、么表达式比拟字符串? 5.2 Whats the best way to send mail from a program? 什么是在程序中发送电子邮件的最好方法? 5.2.1 The simple method: /bin/mail 简单方法:/bin/mail 5.2.2 Invoking the MTA directly: /usr/lib/sendmail 直接启动邮件传输代理(译者注:MTA: mail transfer agent):/usr/bin/sendmail 5.2.2.1 Supplying the envelope explicitly 显式提供收件人信息 5.2.2.2 Allowing sendmail to deduce the recipients 允许sendmail程序根据邮件内容分析出收件人 6. Use of tools 工具的使用 6.1 How can I debug the children after a fork? 我怎样调试fork函数产生的子进程? 6.2 How to build library from other libraries? 怎样通过其他库文件建立新的库文件? 6.3 How to create shared libraries / dlls? 怎样创立动态连接库/dlls?

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 工作计划

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号