寫在前面的話
如果您對該系列感興趣的話,推薦您先看一下南京大學的計算機組成原理實驗(也就是PA)的講義,然後再來看這篇文章可能有更多地收穫。如果您是要完成該作業的學生,我推薦你先看講義,或者好好聽老師的講課,然後自己獨立完成這個作業,但是如果你沒有聽懂,或者你無論如何也無法理解講義上面的字,又或者說對講義上面的某點知識某個問題不瞭解而又覺得太簡單不好意思問老師,那麼您可能會從這篇文章裏面獲得一些你需要的信息。本篇文章將會包括筆者自己做PA的所有經過,希望你並不將該文章當成抄襲的根源,而是成爲你思考的源泉。
PA系列傳送門
PA0:https://blog.csdn.net/qq_41983842/article/details/88921427
PA1.1:https://blog.csdn.net/qq_41983842/article/details/88934779
PA1.2:https://blog.csdn.net/qq_41983842/article/details/89714479
PA1.3:https://blog.csdn.net/qq_41983842/article/details/89714689
PA2.1:https://blog.csdn.net/qq_41983842/article/details/95232055
PA2.2&2.3:https://blog.csdn.net/qq_41983842/article/details/101164495
PA3.1:https://blog.csdn.net/qq_41983842/article/details/103094859
PA3.2:https://blog.csdn.net/qq_41983842/article/details/103843093
PA4:https://blog.csdn.net/qq_41983842/article/details/104667951
思考題
-
Linux and Linux?
不同Linux系統之間有什麼區別?可能你現在說不出來任何區別,因爲你可能僅僅接觸了Debian這一個東西,而在PA0的實驗裏面並沒有怎麼了解他,只是執行了一些簡單的命令,希望你百度這個問題並總結來獲得答案,日後你在使用多種Linux系統的時候可能會有更深的體驗。 -
Can’t memory be larger?
內存大小不可以儘可能大,因爲32位系統可以支配32根地址線,其內存尋址能力是2^32,也就是他內存尋址能力的極限就是4Gb。
-
Why Windows is quite ‘fat’?
Windows有很多東西是一次性下好,但是debian默認安裝的東西比Windows要少很多,很多東西都要之後自己去裝。而且Windows有圖形界面,佔很大空間。
-
爲什麼關機需要超級用戶權限?
防止發生意外,比如說關機的時候別的用戶有文檔沒有保存,這時候直接關機就會導致別的用戶丟失文檔,但是如果是root用戶,整個機器都一個人控制,所以就可以關機。
-
make期間一堆信息輸出到屏幕的時候會發生什麼?
請自己好好思考一下這個問題,提示:(編譯)
-
如何做一個模擬的計算機運行helloworld?
這個問題貫穿整個PA,大概說下自己的感想,什麼都可以,等到做完整個PA之後你就會有更深的體驗。
實驗內容
安裝debian雙系統
我準備在mac上面安裝debian雙系統,而不是裝虛擬機,首先下載debian映像並且製作啓動u盤
開始安裝
輸入用戶名
設置密碼
從mac的128g存儲空間裏面分出來30g
留出來6g的交換空間
選擇安裝的軟件(記得勾上GNOME
)
安裝成功
至此雙系統安裝完成。
進入Linux的第一步
進行poweroff
命令
安裝必要的工具
換成國內163的源
當你無法進行sudo
或者apt-get update
之後發現並不能解決你的問題的時候,就是你換源的時候了,推薦阿里源、163源等等,換源之後你會發現爽的一批。具體換源步驟百度。
apt-get update
並且安裝sudo
安裝vim
vim test
安裝更多的工具
嘗試連接網絡(因爲我是安裝的雙系統,由於debian不支持mac的網卡,所以我選購了rt2800架構的網卡插在電腦上來使用無線網絡,所以我能夠直接連接上網絡而不需要配置,裝虛擬機的同學們請按照講義一步一步來)
接下來安裝了更多的工具,由於數量衆多,所以沒有一一截圖,一般來講只要你換了一個好一點的源,這些都是對着講義輸入指令就完全OK的事情。
更多的發現
進入vimrc
並且進行調試,按照我的習慣設置的vim
寫helloworld
程序
對他進行調試,設置斷點
使用make
指令
校準時間
用SSH連接虛擬機
這部分我沒有做相應的實驗,雙系統直接從終端打開,用虛擬機的小夥伴一定要認真對着講義做這塊,後期好多的問題都容易發生在這個地方。
提交pa實驗的代碼
使用git
工具
添加環境變量
更換STU_ID
切換到pa0
分支
使用git log
查看更改
使用make
命令進行編譯
上傳到coding.net
代碼倉庫
上傳成功!
遇到的問題及解決辦法
寫出你所遇到的比較讓人頭疼的問題
實驗心得
PA0已經到此結束,PA0是整個PA系列最簡單也是最基礎的一步,只有把環境配置好,將來寫代碼纔不會出現奇奇怪怪的問題,不知你有何體驗?