摘要: 原文链接:http://os.51cto.com/art/201104/256477.htmLinux的普通进程(守护进程除外) 是终端的子进程,进程的存在要依赖终端为其提供空间包括标准输入、标准输出、标准出错。比如,在ssh的客户端启动一个连入linux的终端,运行pstree命令,可以看到如下结果:可以看到pstree相当于当前终端启动的一个子进程。然后,我们在输入sleep 2000 &命令,让终端启动一个在后台运行的sleep进程,接下来再运行pstreee;可以看到,启动了一个pid为1354的进程,然后该进程的父进程为sshd,也就是ssh服务启动的终端;然后,在/proc 阅读全文
posted @ 2014-01-16 22:00 johnny_HITWH 阅读(838) 评论(0) 推荐(1) 编辑
摘要: 基本概念:1> tty(终端设备的统称):tty一词源于Teletypes,或者teletypewriters,原来指的是电传打字机,是通过串行线用打印机键盘通过阅读和发送信息的东西,后来这东西被键盘与显示器取代,所以现在叫终端比较合适。终端是一种字符型设备,它有多种类型,通常使用tty来简称各种类型的终端设备。2> pty(虚拟终端):但是如果我们远程telnet到主机或使用xterm时不也需要一个终端交互么?是的,这就是虚拟终端pty(pseudo-tty)3> pts/ptmx(pts/ptmx结合使用,进而实现pty):pts(pseudo-terminal slav 阅读全文
posted @ 2014-01-16 21:56 johnny_HITWH 阅读(361) 评论(0) 推荐(0) 编辑
摘要: PS:这里的缓冲与非缓冲的区别是相对于用户进程,下文的“非缓冲文件系统”指用户的程序没有缓冲区,不要误解为系统没有缓冲区。1.缓冲文件系统缓冲文件系统的特点是:在内存开辟一个“缓冲区”,为程序中的每一个文件使用,当执行读文件的操作时,从磁盘文件将数据先读入内存“缓冲区”, 装满后再从内存“缓冲区”依此读入接收的变量。执行写文件的操作时,先将数据写入内存“缓冲区”,待内存“缓冲区”装满后再写入文件。由此可以看出,内存 “缓冲区”的大小,影响着实际操作外存的次数,内存“缓冲区”越大,则操作外存的次数就少,执行速度就快、效率高。一般来说,文件“缓冲区”的大小随机器 而定。fopen, fclose, 阅读全文
posted @ 2014-01-16 16:20 johnny_HITWH 阅读(442) 评论(0) 推荐(0) 编辑
摘要: C语言中open函数作用:打开和创建文件。简述:1234#include int open(const char *pathname, int flags);int open(const char *pathname, int flags, mode_t mode);返回值:成功则返回文件描述符,否则返回 -1对于open函数来说,第三个参数仅当创建新文件时(即 使用了O_CREAT 时)才使用,用于指定文件的访问权限位(access permission bits)。pathname 是待打开/创建文件的POSIX路径名(如/home/user/a.cpp);flags 用于指定文件的打开/ 阅读全文
posted @ 2014-01-16 11:13 johnny_HITWH 阅读(261) 评论(0) 推荐(0) 编辑
摘要: Linux文件一般是用一些相关的应用程序创建,比如图像工具、文档工具、归档工具... .... 或 cp工具等。linux文件的删除方式是用rm 命令。Linux文件类型;Linux文件类型和Linux文件的文件名所代表的意义是两个不同的概念。我们通过一般应用程序而创建的比如file.txt、file.tar.gz ,这些文件虽然要用不同的程序来打开,但放在Linux文件类型中衡量的话,大多是常规文件(也被称为普通文件)。Linux文件类型常见的有:普通文件、目录、字符设备文件、块设备文件、符号链接文件等;现在我们进行一个简要的说明;1 普通文件[root@localhost ~]# ls - 阅读全文
posted @ 2014-01-16 10:55 johnny_HITWH 阅读(531) 评论(0) 推荐(0) 编辑