• 2018-2019-1 20165210 《信息安全系统设计基础》第6周学习总结


    2018-2019-1 20165210 《信息安全系统设计基础》第6周学习总结

    教材学习内容总结(第十章)

    Unix I/O

    • 打开文件:打开文件操作完成以后才能对文件进行一系列的操作,打开完成过以后会返回一个文件描述符,它在后续对此文件的所有操作中标识这个文件,内核记录有关这个打开文件的所有信息。
    • 打开文件的内核数据结构如下图:

    • 打开文件的C中用的头文件及函数:
    #include <sys/types.h>
    #include <sys/stat.h>
    #include <fcntl.h>
    int open(const char *name,int flags);
    int open(const char *name,int flags,mode_t mode);
    
    • 关闭文件:应用完成了对文件的访问之后,就通知内核关闭这个文件,内核释放文件打开时创建的数据结构,并将这个描述符恢复到可用的描述符池中。进程终止,内核也会关闭所有打开的文件并释放他们的存储器资源。

    I/O重定向:

    • I/O重定向:在Unix系统中,每个进程都有STDIN、STDOUT和STDERR这3种标准I/O,它们是程序最通用的输入输出方式。几乎所有语言都有相应的标准I/O函数,比如,C语言可以通过scanf从终端输入字符,通过printf向终端输出字符。熟悉Shell的朋友都知道,我们可以方便地对Shell命令进行I/O重定向,比如find -name "*.java" >testfile.txt 把当前目录下的Java文件列表重定向到testfile.txt。多数情况下,我们只需要了解I/O重定向的使用就够了,但是如果要编程实现类似Shell的I/O重定向以及管道功能,那么就需要清楚它的原理和实现。

    • 对STDOUT重定向到testfile.txt前后内核文件描述符表变化的示意图:

    重定向前:

    重定向后:

    上周错题:

  • 相关阅读:
    微信上传图片
    HTMl5的sessionStorage和localStorage
    ADO.NET使用using关闭数据库连接
    上传插件(WebUploader)
    jQuery文件分片上传
    SQL Server查询已锁的表及解锁
    Hadoop到底能做什么?怎么用hadoop?
    Hadoop使用场景
    WinForm中DataGridView的快速查找及将指定行显示到第一行
    WinForm中DataGridView的全选与取消全选
  • 原文地址:https://www.cnblogs.com/lyklyk/p/9906613.html
Copyright © 2020-2023  润新知