zoukankan      html  css  js  c++  java
  • 系统编程知识点

     

    #

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

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

    #

    调用read系统调用读取大量磁盘数据时:    
    先通过df命令查看磁盘文件系统(一般是/dev/sda1) 。   
    然后通过sudo tune2fs -l  /dev/sda1, 查看block size 参数值,
    
    我们每次调用read系统调用去读取的数据大小最好和该值相同,此时读取效率会很高。

    #

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

    #

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

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

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

     

    记忆法则: 
    如果使用了<或者>符号,那么大于的一侧(也就是符号开口的那一侧)永远表示输入端。 小于的一侧(也就是尖角的一侧)永远表示输出端。
    默认的输入端和输出端就是标准输入和标准输出。
    
    如果单独使用cat filename, 这是执行一个输出动作,即表示将file内容输出到标准输出。
    
    如果只单独使用cat,这是执行一个输入又输出的动作,即表示从标准输入获取内容并输出到标准输出去(行缓冲)。

    #

       1 . atexit注册多个进程终止处理函数,先注册的后执行(先进后出,和栈一样)

       2.  atexit()用于注册进程结束时所执行的函数

       3.  return、exit和_exit的区别:return和exit效果一样,都是会执行进程终止处理函数,但是用_exit终止进程时并不执行atexit注册的进程终止处理函数。

    #

     Linux中fork后堆、栈、静态全局、文件描述符中哪些是可以共享的?

      

       int pid = fork();父进程pid返回非0,子进程pid返回0.

       对于执行fork之前的一些变量总结如下:

       当父进程调用fork()创建子进程之后,下列哪些变量在子进程中修改之后,父进程里也会相应地作出改动?

       A.全局变量  函数体外变量

       B.局部变量  函数体内变量

       C.静态变量  static修饰

       D.文件指针 文件描述符

       E.一般变量指针       堆上动态分配内存

      答: 只有D文件指针,也就是文件描述符会发生改变,因为文件描述符存在于系统中,为所有进程共享。

             文件指针close时,父子进程都关一次才能最终关闭。

     我的相关博文: https://www.cnblogs.com/happybirthdaytoyou/p/13823641.html


    #


    #


    #


    #


    #


    #


    #


    #


    #


    #


    #


    #


    #


    #


    #

     

     

     

     

     

     

    .

    /************* 社会的有色眼光是:博士生、研究生、本科生、车间工人; 重点大学高材生、普通院校、二流院校、野鸡大学; 年薪百万、五十万、五万; 这些都只是帽子,可以失败千百次,但我和社会都觉得,人只要成功一次,就能换一顶帽子,只是社会看不见你之前的失败的帽子。 当然,换帽子决不是最终目的,走好自己的路就行。 杭州.大话西游 *******/
  • 相关阅读:
    基于HTTP的上载和下载
    HttpContext.current中的applicationstate的运用
    获取汉字拼音首字母
    一个文件上传的类
    HttpContext.current.request[""]
    文件转换为流,流通过字节转换为文件
    字节数组和字符串的相互转化……
    时间精确到毫秒的写法
    设计模式之Builder(转载)
    Windows XP中配置PHP+IIS环境
  • 原文地址:https://www.cnblogs.com/happybirthdaytoyou/p/13767974.html
Copyright © 2011-2022 走看看