linux y86模拟器使用,CS:APP3e 深入理解计算机系统_3e Y86-64模拟器指南

虽然我们学校第四章没有要求做实验(Architecture Lab ),但课后作业用到了Y86-64的模拟器,也是实验材料的一部分。我在编译模拟器的时候遇到了两个困难,解决后在这分享一下。

1. Tcl/Tk等命令找不到

在编译的时候我们会碰到“XXX命令找不到”的情况,这时只需要使用“sudo apt install XXX”即可(我这里是debian系)。但是要注意的是,再安装Tcl/Tk的时候会默认安装8.6的版本,而我们需要要指定安装Tcl8.5和Tk8.5(sudo apt install tcl8.5 tcl8.5-dev tk8.5 tk8.5-dev),并将Makefile改为如下(即添加8.5的后缀):

2fececbb49e8d8629d442bccf53dd403.png

这样才能生成GUI的模拟器。

2. 没有hcl2v

在课本上和sim/misc/README中都提到了有一个能够将hcl转换为verilog的程序,但在编译后只有hcl2c。这是因为(可能是故意的吧)在sim/misc/Makefile中没有加上生成hcl2v的指令。Vim输入命令%s/yas hcl2c/yas hcl2c hcl2v/g即可。随后在sim/下编译即可生成hcl2v:

91c7a660b3a7b6f6bc76ae3ac8ca8427.png

使用该程序将seq-std.hcl转换为verilog:

dac63faaff9370c230f498cb6b30db30.png

CS:APP3e 深入理解计算机系统_3e MallocLab实验

详细的题目要求和资源可以到 http://csapp.cs.cmu.edu/3e/labs.html 或者 http://www.cs.cmu.edu/~./213/schedule.html 获取. ...

CS:APP3e 深入理解计算机系统_3e bomblab实验

bomb.c /*************************************************************************** * Dr. Evil's Ins ...

CS:APP3e 深入理解计算机系统_3e CacheLab实验

详细的题目要求和资源可以到 http://csapp.cs.cmu.edu/3e/labs.html 或者 http://www.cs.cmu.edu/~./213/schedule.html 获取. ...

CS:APP3e 深入理解计算机系统_3e ShellLab(tsh)实验

详细的题目要求和资源可以到 http://csapp.cs.cmu.edu/3e/labs.html 或者 http://www.cs.cmu.edu/~./213/schedule.html 获取. ...

CS:APP3e 深入理解计算机系统_3e Attacklab 实验

详细的题目要求和资源可以到 http://csapp.cs.cmu.edu/3e/labs.html 或者 http://www.cs.cmu.edu/~./213/schedule.html 获取. ...

CS:APP3e 深入理解计算机系统_3e C Programming Lab实验

queue.h: /* * Code for basic C skills diagnostic. * Developed for courses 15-213/18-213/15-513 by R. ...

CS:APP3e 深入理解计算机系统_3e Datalab实验

由于http://csapp.cs.cmu.edu/并未完全开放实验,很多附加实验做不了,一些环境也没办法搭建,更没有标准答案.做了这个实验的朋友可以和我对对答案:) 实验内容和要求可在http:// ...

深入理解计算机系统_3e 第八章家庭作业 CS:APP3e chapter 8 homework

8.9 关于并行的定义我之前写过一篇文章,参考: 并发与并行的区别 The differences between Concurrency and Parallel +---------------- ...

深入理解计算机系统_3e 第四章家庭作业(部分) CS:APP3e chapter 4 homework

4.52以后的题目中的代码大多是书上的,如需使用请联系 randy.bryant@cs.cmu.edu 更新:关于编译Y86-64中遇到的问题,可以参考一下CS:APP3e 深入理解计算机系统_3e ...

随机推荐

HTML文档声明

前面的话   HTML文档通常以类型声明开始,该声明将帮助浏览器确定其尝试解析和显示的HTML文档类型.本文将详细介绍文档声明DOCTYPE 特点   文档声明必须是HTML文档的第一行.且顶格显示, ...

共享Excel编辑的一些资源

官方资料: 使用共享工作簿进行协作 相关介绍文章: http://www.ittribalwo.com/article/678.html http://www.wuji8.com/meta/85646 ...

【VB6】vbRichClient5.cWebServer实现一个简单web服务器

Option Explicit Private WithEvents k As vbRichClient5.cWebServer Private Sub Command1_Click() Set k ...

mysql源码重启

1.通过rpm包安装的MySQL service mysqld restart /etc/inint.d/mysqld start 2.从源码包安装的MySQL // linux关闭MySQL的命令 ...

一款基于jquery的下拉点击改变背景图片

今天给大家介绍一款基于jquery的下拉点击改变背景图片.单击右上角的图片,下拉显示可选择的背景图片,单击图片变为背景图.效果图下: 在线预览   源码下载 实现的代码. html代码:

MFC中Listbox控件的简单使用

MFC中listbox控件是为了显示一系列的文本,每个文本占一行.   Listbox控件可以设置属性为: LBS_CHILD   :(默认)子窗口 LBS_Visible :(默认)可视 LBS_M ...

C 数据结构1——线性表分析(顺序存储、链式存储)

之前是由于学校工作室招新,跟着大伙工作室招新训练营学习数据结构,那个时候,纯碎是小白(至少比现在白很多)那个时候,学习数据结构,真的是一脸茫然,虽然写出来了,但真的不知道在干嘛.调试过程中,各种bug ...

设计模式——辛格尔顿(Singleton)

要想正确理解设计模式,首先必须明白它是为了解决什么问题而提出来的. 设计模式学习笔记 --Shulin 转载请注明出处:http://blog.csdn.net/zhshulin 单例模式属于设计模式 ...

SSZipArchive的使用详解和遇到的问题

https://blog.csdn.net/zhengang007/article/details/51019479 2016年03月30日 版权声明:本文为博主原创文章,转载请注明作者和原文链接. ...

java中流的简单小结

1.分类 按字节流分: InputStream(输出流)     OutputStream(输入流) 按字符流分: Reader Writer  提示:输入.输出是站在程序的角度而言,所有输入流是“读 ...

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值