课上作业补交 p526/syscalls1
P526代码检查:
1 编译运行p524代码,提交运行结果截图
2 MAXLINE的值是多少?提交Ubuntu中查找这个值的命令和结果截图
3 p525 eval 函数中调用的Fork()函数需要什么头文件?你是如何查找的?
4 Fork() 与fork()什么关系?
1.运行p524代码:
下载老师所提供的代码,里面包含书上代码和头文件,之后进行编译
有可能是因为系统和库的原因,gcc命令直接编译无法通过,所以按照老师说得步骤,使用make file进行编译得:

出现可执行文件shellex,运行得:

2.使用grep -nr进行查看头文件中MAXLINE的值
因为我们不知道MAXLINE在哪个头文件中,直接在系统找过于慢,所以要缩小范围
头文件目录在系统的 /usr/include 目录下,所以输入命令:grep -nr "MAXLINE" /usr/include
发现MAXLINE的值为8192

3.p525 eval 函数中调用的Fork()函数需要什么头文件?你是如何查找的?
使用man -k 进行寻找

4.Fork() 与fork()什么关系?
进入fork中查看详细内容

fork创建一个子进程

所以Fork()与fork()是父子进程调用的关系
syscalls1:
- 学习xxd的使用,提交至少3个应用截图
- xxd的主要功能是什么?需要使用什么系统调用来实现?写出你的推导过程,命令
- 写出实现xxd的伪代码
学习xxd的使用,提交至少3个应用截图

-v-i

-ps

经查询相关资料,xxd的功能如下:
-a 缺省忽略转换: 使用‘*’替换空行.
-b 二进数数据转储 (与 -ps,-i,-r不兼容). 默认为16进制.
-c cols 每行多少列octets(特制8比特的字节). 默认为16列(-i: 12, -ps: 30).
-E 使用EBCDIC字符集. 默认为ASCII字符集.
-e 小端模式转储 (与 -ps,-i,-r不兼容).
-g 在正常输出中,每组八位字节数. 默认为2个 (-e: 4).
-h 输出此帮助.
-i 使用C语言文件样式输出.
-l len 在len个八位字节后停止.
-o off 在off个偏移量后开始输出.
-ps 以在行后添加16进制转储内容的格式输出.
-r 逆向操作: 转换(或修补) 十六进制内容为二进制内容.
-r -s off 在off个偏移量后开始转换16进制内容为二进制内容
-s [+][-]seek start at <seek> bytes abs. (or +: rel.) infile offset.(没看懂)
-u 使用大写字母进行十六进制表示.
-v 显示版本: "xxd V1.10 27oct98 by Juergen Weigert".
写出实现xxd的伪代码
没有完全理解,在学习后再回答。
课上作业补交 p526/syscalls1的更多相关文章
- 2017-2018-1 20155326信息安全系统设计基础》嵌入式C语言课上考试补交
2017-2018-1 20155326信息安全系统设计基础>嵌入式C语言课上考试补交 PPT上的例子 已知位运算规则为: &0 --> 清零 &1 --> 不变 | ...
- 关于转入软件工程专业后第二次java课上作业的某些体会
今天是第二周的java课. 自从转入了软件工程专业后,在我没有学习c++的基础上,直接开始了学习java的过程.不得不说过程很艰辛.今天下午老师让编写一个随机产生作业的软件.而我的基础差到都不知道如何 ...
- # 2017-2018-1 20155302 课下实践IPC及课上补充
课上实践补交 题目二要求: 学习使用stat(1),并用C语言实现 提交学习stat(1)的截图 man -k ,grep -r的使用 伪代码 产品代码 mystate.c,提交码云链接 测试代码,m ...
- 20155332 补交ch12课下作业
20155332 补交ch12课下作业 课下测试提交晚了,我课后补做了一遍,答对13题,答错3题. 试题内容如下所示: 课本内容 1.并发(Concurrency) 访问慢I/O设备:就像当应用程序等 ...
- 第六周课上测试-3-ch02补充作业
实验要求: 编写一个程序 "week0603学号.c",运行下面代码: short int v = -学号后四位 unsigned short uv = (unsigned sho ...
- 2018-2019-1 20165330 《信息安全系统设计基础》第六周课上测试ch02&课下作业
课上测试 测试-3-ch02 任务详情 编写一个程序 "week0203学号.c",运行下面代码: 1 short int v = -学号后四位 2 unsigned short ...
- 20155325 2017-2018 1 课上测试、课下作业、实验——码云&博客链接汇总 《信息安全系统设计基础》
第二周-课上 码云 https://gitee.com/bestiisjava2017/XinXiAnQuanXiTongSheJiJiChu20155325thl/tree/master/0927 ...
- 2017-2018-1 20155307 《信息安全系统设计基础》第十周课上未完成补充以及课下IPC作业
课上内容2:stat命令的实现-mysate 学习使用stat(1),并用C语言实现 提交学习stat(1)的截图 man -k ,grep -r的使用 伪代码 产品代码 mystate.c,提交码云 ...
- 20165302 ch02 课下作业
20165302 ch02 课下作业 作业内容 补充完成课上测试(不能只有截图,要有分析,问题解决过程,新学到的知识点) 完成教材 p97 2.96 2.97,要有完备的测试 发一篇相关内容的博客, ...
随机推荐
- Python 入门之 内置模块 -- datetime模块
Python 入门之 内置模块 -- datetime模块 1.datetime模块 from datetime import datetime (1)datetime.now() 获取当前时间和日期 ...
- js汉字转换为拼音
片段 1 片段 2 gistfile1.txt /* --- description: Pinyin, to get chinese pinyin from chinese. license: MIT ...
- Dynamic Compilation and Loading of .NET Objects
This is another approach to dynamic compilation of objects and their usage via Interfaces. Introdu ...
- php小程序生成二维码
<?php getwxacode(); //生成二维码 function getwxacode(){ $url = "https://api.weixin.qq.com/wxa/get ...
- ELK-全文检索技术-lucene
ELK : ELK是ElasticSearch,LogStash以及Kibana三个产品的首字母缩写 一.倒排索引 学习elk,必须先掌握倒排索引思想, 参考文档: https://www.cn ...
- 修改jar包package目录结构操作方法
开发中会遇到用第三方的jar包,有时候会出现不同的jar包,包名一致的情况,这就会引发运行时异常,找不到相应的jar包. 这种问题时常困扰我们很长时间.下面提出一种解决办法,例如gson.jar. 1 ...
- Spring Boot自动配置总结
Spring Boot项目启动的时候加载主配置类,并开启了自动配置功能.(Spring Boot的自动配置功能是Spring Boot的一大重要且突出的特性) 那么我们需要了解下它: 如何加载主配置类 ...
- 001-SaltStack入门篇(一)之SaltStack部署
早期运维工作中用过稍微复杂的Puppet,下面介绍下更为简单实用的Saltstack自动化运维的使用. Saltstack知多少Saltstack是一种全新的基础设施管理方式,是一个服务器基础架构集中 ...
- PAT Basic 1033 旧键盘打字 (20 分)
旧键盘上坏了几个键,于是在敲一段文字的时候,对应的字符就不会出现.现在给出应该输入的一段文字.以及坏掉的那些键,打出的结果文字会是怎样? 输入格式: 输入在 2 行中分别给出坏掉的那些键.以及应该输入 ...
- Hive的安装搭建(三)
03 Hive的安装搭建 Hive可以从源码中编译安装,也可以直接使用官网下载的安装包,在此处我们选择安装包解压安装的方式. Hive中最最重要的角色就是metastore 因此按照metastore ...