20155301《信息安全系統設計基礎》課程總結
20155301《信息安全系統設計基礎》課程總結
作業鏈接及二維碼
第一周作業:第一章、第七章,計算機系統漫遊
第二周作業:復習C語言中關於二進制文件和文本文件讀寫的相關內容,模仿od完成myod
第三周作業:第二章《信息的表示和處理》
第四周作業:掌握兩個重要命令: man -k key1 | grep key2| grep 2 : 根據關鍵字檢索系統調用 grep -nr XXX /usr/include :查找宏定義,類型定義
第五周作業:第三章《程序的機器級表示》
第六周作業:第八章《異常控制流》,第十章《系統級I/O》
第七周作業:第四章《處理器體系結構》
第八周作業:第十一章《網絡編程》,第十二章《並發編程》
第九周作業:第六章《存儲器層次結構》
- 第十周作業:無
第十一周作業:第九章《虛擬存儲器》
- 第十二作業:無
第十三周作業:找出全書你認為最重要的一章,深入重新學習一下
第十四周作業:找出全書你認為學得最差的一章,深入重新學習一下
實驗報告鏈接匯總
- 實驗一 開發環境的熟悉:
1.交叉編譯環境
2.目標機宿主機聯通
3.目標機運行程序
- 實驗二 固件程序設計:
1.MDK
2.LED
3.UART
4.國密算法
- 實驗三 實時系統:
1.並發程序-1:客戶端傳一個文本文件給服務器
2.並發程序-2:用多線程實現wc服務器並使用同步互斥機制保證計數正確
- 實驗四 外設驅動程序設計:
1.學習資源中全課中的“hqyj.嵌入式Linux應用程序開發標準教程.pdf”中的第十一章
2.在Ubuntu完成資源中全課中的“hqyj.嵌入式Linux應用程序開發標準教程.pdf”中的第十一章的test試驗
- 實驗五 通訊協議設計:
1.研究OpenSSL算法,測試對稱算法中的AES,非對稱算法中的RSA,Hash算法中的MD5
2.在Ubuntu中實現對實驗二中的“wc服務器”通過混合密碼系統進行防護
代碼托管鏈接和二維碼:
- 截圖 git log --pretty=format:"%h - %an, %ar : %s" 的結果,代碼量匯總提交statistics.sh的支持截圖
-代碼驅動的學習做到沒有?
通過幾次實驗以及利用的工具,學到了一些代碼驅動的知識。
- 加點代碼,改點代碼是理解的最好方式,參考編程的智慧,談談你的心得
加代碼和改代碼都是在已經理解了程序的基礎上進行的,所以我們必須先要讀懂程序,才可以進行下一步的添加或者改進。
- 實踐上有什麽經驗教訓
需要先理解和讀懂代碼的意思,再進行實驗,否則步驟會混亂非常消耗時間。
- 整體評價一下第1周作業中自己提出的問題是不是抓住了學習重點
第一章中提出的問題基本上沒有抓住學習重點。
- 回答一下第1周作業中自己提出的問題
第一章:對於多線程問題:當一個處理器等待輸入設備響應的時候,多線程會轉向執行另一個程序命令,假如任務A需花費5分鐘,任務B需話費10分鐘,對於任務A等待輸入設備指令時跳去執行任務B,任務A和任務B在我的理解裏不能同時進行,但是所花費的時間為什麽時10分鐘,是有多個處理器嗎,我理解的是15分鐘。
答:單處理器應該是
第二章:怎麽樣讓負數等於正數?
答:在負數x後加上U,可以使其轉換為(2^w+x)
第三章:為什麽C語言只有一個條件語句;而匯編中有兩個分支呢?
答:第一個條件分支是&&表達式實現的一部分;如果對非空的測試失敗,代碼會跳過測試。
第四章:Y-86和X-86的區別
答:區別就在於,有的時候Y86需要兩條指令來達到X86一條指令就可以達成的目的
第五章:程序性能的評估方面,如何評估
答:評估程序的效率,循環的次數,過程調用的次數,並且盡力減少不必要的內存調用。
第六章:存儲器的結構是什麽
第七章:如何構造動態鏈接庫,動態鏈接庫和靜態鏈接庫的區別是什麽
答:動態鏈接庫相比靜態鏈接庫相比,優勢是:1 共享內存 2 獨立升級組件(插件)3可以顯示動態加載(dllopen)。劣勢:是損失一點點效率(計算符號地址)
第八章:如何理解並發流,怎麽應用
答:在操作系統中,是指一個時間段中有幾個程序都處於已啟動運行到運行完畢之間,且這幾個程序都是在同一個處理機上運行。其中兩種並發關系分別是同步和互斥
第九章:虛擬內存的作用是什麽,和實際的內存區別在哪裏
答:虛擬內存是計算機系統內存管理的一種技術。它使得應用程序認為它擁有連續的可用的內存(一個連續完整的地址空間),而實際上,它通常是被分隔成多個物理內存碎片,還有部分暫時存儲在外部磁盤存儲器上,在需要時進行數據交換。
第十章:如何讀取目錄內容
答:通過readdir系列函數來讀取目錄內容
第十一章:如何構建Web服務器
答:利用Socket、connect、bind、listen、accept函數構建服務器與客戶端連接。
第十二章:如何在客戶端-服務器中加入並發的結構
答:主線程通過調用pthread_create函數創建一個新的對等線程。當對pthread_create的調用返回時,主線程和新創建的對等線程同時運行,並且tid包含新線程的ID。
你有什麽項目被加分,談談你的經驗
優秀作業(給出鏈接和二維碼)
總結(給出鏈接和二維碼)
項目(給出鏈接和二維碼)
教程(給出鏈接和二維碼)
競賽
...
你有什麽項目被扣分,談談你的教訓
不動手實踐
遲交作業
不驗收代碼
...
課程收獲與不足
- 自己的收獲(投入,效率,效果等)
對於計算機系統有了更全面更細致的了解,並且在代碼方面有了更深的理解。
- 自己需要改進的地方
希望自己可能更加精益求精一些,不要滿足於完成了一些基礎知識。
- 如果有結對,寫一下你提供的幫助或接受了什麽幫助,並對老師提供參考建議
結對的過程主要是課後習題的討論,結對同伴學習能力很強,對於題目的理解更加深刻,在相互交流之後學習到了更好的方法。
- 給開學初的你和學弟學妹們的學習建議
還是要理論和實踐結合,不要滿足於基本的知識。
- 如果重新學習這門課,怎麽做才可以學的更好
多實踐一些代碼吧。
問卷調查
- 你平均每周投入到本課程多長時間?
大概有10個小時吧
- 每周的學習效率有提高嗎?
學習效率提高不明顯。
- 學習效果自己滿意嗎?
還可以,不是很好,還有進步的空間。
- 課程結束後會繼續一周至少一篇博客嗎?(如果能做到,畢業時我把你的博客給你集結成一本書送給你作紀念)
大概不會
- 你覺得這門課老師應該繼續做哪一件事情?
課外拓展方面應該繼續。
-你覺得這門課老師應該停止做哪一件事情?
我覺得問題還是在講的不是很有條理吧,感覺零零散散的全靠課上聽講沒有辦法把知識整合到一起。
- 你覺得這門課老師應該開始做什麽新的事情?
做一個講課的流程圖與課本結合。
其他任意發揮
link
20155301《信息安全系統設計基礎》課程總結