祝福網

首頁 > 學習 > 心得體會 > 心得體會大全 / 正文

操作系統實驗報告經驗

2022-12-21 心得體會大全

以下是祝福網小編整理的操作系統實驗報告經驗。歡迎您閱讀。有關更多信息,請關注祝福網感體驗欄。

操作系統實驗報告經驗

每一次課程設計都讓我學到了平時課堂上學不到的東西。所以我珍惜每一個課程設計的機會。我的課程設計不一定完美,但我總是致力于研究和學習。因此,在這兩周的課程中,熬了兩夜,生物鐘也嚴重混亂。但我對完成任務感到興奮。一開始任務是任務,后來任務成了自己的作品。一般來說,我的課程設計符合教師的基本要求。總結一下有以下體會。

網絡真的很強大,用于學習將是一個非常有效的助手。幾乎所有的信息都可以在網上找到。從linux安裝虛擬機,到linux各種基本命令操作,再到gtk圖形函數,最后詳細分析文件系統。這些都可以在網上找到。正因為如此,經過整個課程的設計,我瀏覽了100多個相關網頁(不完全統計)。當然,網上的東西很亂,要能學會篩選。

如果你不能決定是對是錯,有一個非常簡單的方法就是嘗試。以第二個實驗為例,編譯核心有很多小操作。如果這些小操作中有一個錯誤,可能會導致編譯失敗,這需要很多時間。我使用的虛擬機每次編譯近3個小時。因此,我們應該非常小心,盡量少犯錯誤,節省時間。找到更多的參考資料,相互比較,慢慢學習,最終事半功倍。

2.學生之間的討論非常重要。畢竟,老師很忙。課程設計最大的討論伙伴應該是學生。當然,最好和大四學生討論。如果沒有這個機會,與班上的學生討論也會受益匪淺。每個人都在研究同樣的問題并討論它們。他們可以理清思路,互相幫助,大大提高效率。bestzhufu.com

3.敢于攻堅,問題越難,心理越有挑戰性。這樣就可以達到忘記吃飯睡覺的境界。當然,這并不提倡熬夜。畢竟,只有有了精力,我們才能打一場持久戰。但是,你必須有一個狀態來做課。你可以考慮在吃飯、睡覺和上廁所時解決的問題,這樣你就很難不成功。

4.最好在做課的過程中有記錄的習慣,這樣在寫實驗報告的時候就能完全回憶起中間遇到的各種問題。比如我遇到了我以前從未遇到過的錯誤問題,這讓我不知道從哪里開始。經過大量的資料查閱,我對錯誤有了一定的了解,可以用相應的方法解決。

編程中以下幾種方法容易導致段錯誤,基本上是指針使用錯誤造成的

1)訪問系統數據區,特別是在系統保護的內存地址上寫數據,最常見的是給指針0地址

2)內存越界(數組越界,變量類型不一致等) 訪問不屬于你的內存區域

3)其他

例如:

<1>定義指針后記得初始化,使用時記得判斷是否為null

<2>使用數組時是否初始化,數組下標是否越界,數組元素是否存在等

<3>變量處理時變量格式控制是否合理等

解決方法

1.利用gdb逐步發現段錯誤:

2.分析core文件

3.錯誤時啟動調試:

4.利用backtrace和objdump進行分析:

總之,對待課程設置要像對待自己的作品一樣,不要作為任務來完成。

學習操作系統的經驗

轉眼間,學習了一個學期的計算機操作系統課程即將結束。本學期,通過老師的精心指導,我深刻體會到了計算機操作系統的一些原理和具體操作過程。

在學習操作系統之前,我只是膚淺地認為操作系統只是簡單地談論計算機的操作應用程序,而不了解具體的操作過程和實用性。通過本學期的學習,我知道操作系統(Operating System,簡稱OS)管理計算機系統的所有硬件資源包括軟件資源和數據資源;控制程序運行;改進人機界面;支持其他應用軟件,使計算機系統的所有資源最大化,為用戶提供方便、有效、友好的服務界面。

經過一個學期的學習,我也知道計算機操作系統是一個鋪設在計算機硬件上的多層系統軟件,不僅增強了系統的功能,而且隱藏了硬件操作的細節,從而實現了計算機硬件操作的多層次抽象。操作系統的一些原理也應用于生活中。以下是我通過本學期的學習將操作系統的一些原理與生活收入的經驗聯系起來:

1.生產—消費者問題

在實際操作系統的操作過程中,經常會遇到以下場景:一個模塊負責生成由另一個模塊處理的數據(這里的模塊是廣義的,可以是類、函數、線程、過程等)。生成數據的模塊生動地稱為生產者;處理數據的模塊稱為消費者。

僅僅抽象生產者和消費者是不夠的—消費者問題。該問題還需要有一個緩沖區處于生產者和消費者之間,作為一個中介。生產者把數據放入緩沖區,而消費者從緩沖區取出數據。

為了理解這個問題,讓我們舉一個發送信件的例子。假設您想發送平信,一般過程如下:

你寫信——相當于生產者制造的數據

2、你把信放入郵筒——相當于生產者將數據放入緩沖區

3.郵遞員取出信從郵箱——相當于消費者取出緩沖區的數據

4.郵遞員把信拿到郵局相應處理——相當于消費者處理數據

2.銀行家算法——避免死鎖

死鎖的產生是指兩個或兩個以上的過程在執行過程中相互等待的現象。如果沒有外力,就無法推進。此時稱系統處于死鎖狀態或系統產生死鎖,這些總是相互等待的過程稱為死鎖過程。由于資源占用是相互排斥的,當一個過程提出申請資源時,相關過程永遠無法在沒有外力幫助的情況下分配必要的資源,無法繼續運行,導致一種特殊現象死鎖。我認為操作系統中提到的死鎖就像兩個人過獨木橋,兩輛車過單行橋,因為共享資源,即道路。

為了提高系統資源的利用率,避免死鎖并不嚴格限制必要條件的存在,而是在資源的動態分配過程中,采用某種方法防止系統進入不安全狀態,從而避免死鎖的最終出現。然而,避免死鎖最具代表性的算法是Dijkstra銀行家算法。該方法將系統狀態分為安全狀態和不安全狀態,只要能使系統始終處于安全狀態,就可以避免死鎖。銀行家算法的基本思想是在分配資源之前判斷系統是否安全;如果安全,則分配。

我們可以將操作系統視為銀行家,操作系統管理的資源相當于銀行家管理的資金,過程要求操作系統分配的資源相當于用戶向銀行家貸款。銀行家規定:

(1)當客戶對資金的最大需求不超過銀行家現有資金時,可以接受客戶;

(2)客戶可以分期貸款,但貸款總數不能超過最大需求;

(3)當銀行家現有資金不能滿足客戶仍需的貸款金額時,客戶的貸款可以延遲支付,但客戶總是可以在有限的時間內獲得貸款;

(4)客戶獲得所需資金后,必須能夠在有限的時間內歸還所有資金。

此外,我們還可以將操作系統視為建造房屋,操作系統的資源視為建造房屋的起重機數量。向操作系統分配資源的過程相當于建造房屋時申請的起重機數量。為確保項目順利進行,其操作流程如下:

當房屋對起重機的最大需求不超過現有起重機時,可以接受房屋的建設;

需要建造的房屋可以單獨申請請的起重機總數不得超過最大需求;

當現有的起重機數量不能滿足房屋仍需的起重機時,可以推遲房屋所需的起重機數量,但房屋總能在有限的時間內獲得貸款;

當建造的房屋獲得所需的所有起重機時,所有起重機的數量將能夠在有限的時間內歸還。

過程同步問題

在一個過程達到確定點后,除非其他過程已經完成了一些操作,否則必須停止等待另一個過程提供的信息。在獲得信息之前,過程處于等待狀態,在獲得信息后被喚醒,這是過程同步。我們也可以在生活中找到相應的例子:

例如,汽車司機和售票員負責駕駛、進站、開門、關門和進站;

售票員負責售票,進出站后觀察車門,向司機發送開關信息;正常情況下,各自活動,司機開車,售票員售票;進出站時,雙方應同步過程。

小結:

總之,操作系統的一些原理可以在生活中找到相應的例子。結合生活中的例子,我們可以把抽象變成具體的例子,我們將更清楚地理解其原理和操作過程。我認為通過不斷的學習和生活中的實際問題,我們將更好地學習操作系統。

精品小說推薦: 昔日落魄少年被逐出家族,福禍相依得神秘老者相助,從此人生路上一片青雲! 我行我瀟灑,彰顯我性格! 彆罵小爺拽,媳婦多了用車載! 妹紙一聲好歐巴,轉手就是摸摸大! “不要嘛!” 完整內容請點擊辣手仙醫

Tags:操作系統實驗報告心得體會   學習操作系統的心得體會

網站分類
標簽列表