zoukankan      html  css  js  c++  java
  • 2017-2018-1 20155308 《信息安全系统设计基础》第四周学习总结(第四周测试)

    2017-2018-1 20155308 《信息安全系统设计基础》第四周学习总结

    教材学习内容总结

    任务一myod-系统调用版本

    要求:

    1. 参考教材第十章内容
    2. 用Linux IO相关系统调用编写myod.c 用myod XXX实现Linux下od -tx -tc XXX的功能,注意XXX是文件名,通过命令行传入,不要让用户输入文件名
    3. 不要把代码都写入main函数中
    4. 要分模块,不要把代码都写入一个.c中
    5. 提交测试代码和运行结果截图, 提交调试过程截图,要全屏,包含自己的学号信息

    学习:Linux od命令详解

    http://www.jb51.net/article/102421.htm

    • 功能

    od命令用于将指定文件内容以八进制、十进制、十六进制、浮点格式或ASCII编码字符方式显示,通常用于显示或查看文件中不能直接显示在终端的字符。od命令系统默认的显示方式是八进制,名称源于Octal Dump。

    常见的文件为文本文件和二进制文件。od命令主要用来查看保存在二进制文件中的值,按照指定格式解释文件中的数据并输出,不管是IEEE754格式的浮点数还是ASCII码,od命令都能按照需求输出它们的值。

    • 命令格式
    od [<选项><参数>][<文件名>]
    

    以十六进制输出,默认以四字节为一组(一列)显示。

    od -tc -tx 20155308.txt
    

    以十六进制输出,每列输出一字节。

    od -tx1 testfile
    

    这样显示就整齐多了。

    • 如果要是用myod.c代码实现运行:

    码云链接为

    https://gitee.com/haowenfei25/XinXiAnQuanXiTongSheJiJiChu20155308/blob/master/ketang/myod.c

    实验过程中的问题

    在编译之后,直接运行myod,将会出现以下的问题:

    后来我发现不能直接运行,而是应用命令限制输出

    ./myod -tc -tx1 12.txt
    

    结果就正常了

    任务二

    • 对于文件的处理:
    1. 打开文件:宣告想要访问一个I/O设备,内核返回描述符(小的非负整数)
      改变当前的文件位置:内核保持着一个文件位置k,是从文件开头起始的字节偏移量
    2. 读写文件:调用read和write函数文件从当前文件位置开始读写。调用read和write函数来执行输入和输出的,read成功返回读的字节数,若EOF为0,出错为-1。
      •write成功则为写的字节数,出错则为-1
    3. 关闭文件:内核释放文件打开时创建的数据结构,并将这个描述符恢复到可用的描述符池中
    • RIO包

    RIO提供两种函数

    无缓冲的输入输出函数:直接在存储器和文件之间传送数据,没有应用级缓冲,对二进制数据读写到网络和从网络读写二进制数据

    任务三 完成head,tail的使用

    -head命令就是对文件打印代码,默认是从头开始打印前10行 ,也可以自定义打印
    <1>head -n xxx :打印前几行
    <2>head -c xxx :打印前几个字

    • tail命令就是对文件打印代码,默认是从头开始打印后10行 ,也可以自定义打印
      <1>tail -n xxx:打印后几行
      <2>head -c xxx :打印后几个字

    通过man -k head了解head命令的主要功能

    缩小查找范围

    保存一个文件

    打印出文件前几行的文字

    通过man tail了解tail命令的主要功能

    打印后十个字

    感悟、思考

    本次课上测试主要是根据之前我们所编写的myod代码进行的一次测试,我在课堂上没有做出来,所以课下根据网上的讲解和同学的代码,认真了解了这个命令的使用,并且自己做了实践,感觉受益匪浅。

  • 相关阅读:
    js Math对象
    extjs 获取Dom对象
    easyui validatebox 验证集合
    Ext.Ajax.request与form.submit的用法区别
    js获取url参数值
    【原创】extjs4做的grid,带分页,搜索
    SqlServer2005数据库同步
    【原创】jquery实现动态多组图片切换
    easyui表单数据验证
    对象模型图【OMD】阅读指南
  • 原文地址:https://www.cnblogs.com/JIUSHA/p/7674725.html
Copyright © 2011-2022 走看看