2020-12-08
12:06pm 上課的時候想到了問題:應該由於沒有在迴圈裡寫.next導致的程式終止。
不會程式死迴圈了,但是仍然沒有實現效果。我需要把加入節點的程式碼改一下,改成可以順序加入的。(之前寫的只能加在最近的後面)
8:35pm 可以正常執行了,但是還是有問題——不能讓程式進入到之前的地址,並且程式會一直向下走。分析問題的可能因素:①在處理執行結束時的表操作有問題;②排程進記憶體時的表、新建操作有問題。
先分析第一種。
分析第二種,發現對記憶體的判斷出了問題。改正之後不能再向後輸出了。但到沒有位置的時候會程式一直執行但是狀態不動。
更改了一些排程時的判斷與操作。現在程式會被新增到記憶體的首地址處。
分析:由於會有連續兩次新增到首地址處,兩次都是在程式未執行結束時新增。所以認為應該是新增時出現的判斷問題。
發現前六個在新建時沒有在PCB裡定義startlocation。
10:46 開始加入當總記憶體足夠,但單個不夠時的合併。
2:10 可以睡覺了。