系统编程知识点

 

#api

行缓存会输出的时机: 行缓存满,程序结束,遇到fflush刷新,遇到换行符。 
磁盘一般是全缓存。 标准错误通常是无缓存,但愿尽快被输出到终端上。

系统调用api不带缓冲,C库函数api带缓冲。

#数组

调用read系统调用读取大量磁盘数据时:    
先经过df命令查看磁盘文件系统(通常是/dev/sda1) 。   
而后经过sudo tune2fs -l  /dev/sda1, 查看block size 参数值,

咱们每次调用read系统调用去读取的数据大小最好和该值相同,此时读取效率会很高。

#缓存

文件描述符fd是文件描述符表内的数组的下标,能够经过该数组下标进而找到文件表项和i节点。

#函数

  1. cat cat命令执行,无参数时,表示从标准输入(键盘)读取内容,并输出到标准输出。spa

2. cat filename   cat命令后面跟文件名,表示从文件读取内容,并输出到标准输出。
3. cat>filename   表示从标准输入读取内容,并将内容输出到强制新建的filename文件中。

4.  cat<filename 表示从文件file读取内容,并将内容输出到标准输出去。

 

记忆法则: 
若是使用了<或者>符号,那么大于的一侧(也就是符号开口的那一侧)永远表示输入端。 小于的一侧(也就是尖角的一侧)永远表示输出端。
默认的输入端和输出端就是标准输入和标准输出。

若是单独使用cat filename, 这是执行一个输出动做,即表示将file内容输出到标准输出。

若是只单独使用cat,这是执行一个输入又输出的动做,即表示从标准输入获取内容并输出到标准输出去(行缓冲)。

#blog

 

#效率


#file


#终端


#程序


#


#


#


#


#


#


#


#


#


#


#


#

 

 

 

 

 

 

.

相关文章
相关标签/搜索