李秋豪计算机系统,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的后綴):
這樣才能生成GUI的模擬器。
2. 沒有hcl2v
在課本上和sim/misc/README中都提到了有一個能夠將hcl轉換為verilog的程序,但在編譯后只有hcl2c。這是因為(可能是故意的吧)在sim/misc/Makefile中沒有加上生成hcl2v的指令。Vim輸入命令%s/yas hcl2c/yas hcl2c hcl2v/g即可。隨后在sim/下編譯即可生成hcl2v:
使用該程序將seq-std.hcl轉換為verilog:
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 ...
隨機推薦
[MySQL Reference Manual]14 InnoDB存儲引擎
14 InnoDB存儲引擎 14 InnoDB存儲引擎 14.1 InnoDB說明 14.1.1 InnoDB作為默認存儲引擎 14.1.1.1 存儲引擎的趨勢 14.1.1.2 InnoDB變成默認 ...
Linux(ubanto):可以ping通IP,但不能ping通域名
打開/etc/resolv.conf文件 vi /etc/resolv.conf 插入一下兩行保存即可 nameserver 8.8.8.8 nameserver 8.8.4.4
guava學習--集合2&;Range
轉載:http://www.cnblogs.com/peida/p/Guava_ImmutableCollections.html Table: 當我們需要多個索引的數據結構的時候,通常情況下,我們只 ...
Qt 學習之路:視圖選擇 (QItemSelectionModel)
選擇是視圖中常用的一個操作.在列表.樹或者表格中,通過鼠標點擊可以選中某一項,被選中項會變成高亮或者反色.在 Qt 中,選擇也是使用了一種模型.在 model/view 架構中,這種選擇模型提供了一種 ...
POJ1753 搜索
Flip Game Description Flip game is played on a rectangular 4x4 field with two-sided pieces placed on ...
Codeforces #548 (Div2) - D.Steps to One(概率dp+數論)
Problem ??Codeforces #548 (Div2) - D.Steps to One Time Limit: 2000 mSec Problem Description Input Th ...
STM32啟動文件深度解析
STM32啟動過程全面解析,包括啟動過程的介紹.啟動代碼的陳列以及深入解析.相對于ARM上一代的主流ARM7/ARM9內核架構,新一代Cortex內核架構的啟動方式有了比較大的變化.ARM7/ARM9 ...
LNMP分離式部署實例[轉]
很多人在練習部署LNMP環境的時候,大都數是部署在同一個虛擬機上面的.但是實際工作中,我們一般都是分離部署的. 今天我就用3臺虛擬機,部署下LNMP環境.以供參考! 網絡拓撲圖: 首先準備3臺虛擬機: ...
Django自帶的加密算法及加密模塊
Django 內置的User類提供了用戶密碼的存儲.驗證.修改等功能,可以很方便你的給用戶提供密碼服務. 默認的Ddjango使用pbkdf2_sha256方式來存儲和管理用的密碼,當然是可以自定義的 ...
按照Right-BICEP要求設計的測試用例
測試用例: 測試方法:Right-BICEP 測試要求: Right-結果是否正確? B-是否所有的邊界條件都是正確的? P-是否滿足性能要求? 題目是否有重復? 數量是否可定制? 數值范圍是否可定制 ...
總結
以上是生活随笔為你收集整理的李秋豪计算机系统,CS:APP3e 深入理解计算机系统_3e Y86-64模拟器指南的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Jsoup爬虫的基本使用
- 下一篇: java飞机大战强化版_java飞机大战