|-include | | | |_interrupt.h #中斷的函數頭文件 | | | |-io.h #輸入輸出函數的頭文件 | | | |-process_struct.h #進程處理的結構體文件 | | | |-process.h #進程的頭文件 | | | |-gloable.h #放一些全局的變量例如:選擇子 | | | |-unistd.h #系統調用的函數對應的選擇 | | | |-pci.h #pci定義的結構體 | |-kernel | | | |-interrupt.c #中斷處理的C文件 | | | |-kernel.asm #內核文件 | | | |-process.c #進程處理的文件 | |-lib | | | |-klib.asm #核心函數文件 | | | |-printf.c #輸出擴展C文件 | | | |-sys_call.asm #系統的函數 | | | |-sys_printf.c #擴展的系統輸出函數 | | | |-pci.c #對pci進行處理的 | |-mbr.asm
############################################################# ##後面的修改將要放在這裏了 ############################################################# java
############################################################# ##2014-02-05-1 ## ##將要把顯示的GDT權限修改成 用戶級別了 ## ##添加的GDT位置從47開始的也就是說已經有5個了,從第六個開始 ## ##添加任務切換的須要 ## ##編譯採用了makefile的使用了(尚未完工) ############################################################# git
############################################################# ##2014-02-07-1 ## ##用戶態的跳轉實現了,發現一個BUG,用戶態不能操做端口 ## ##打算採用系統調用的方式解決這個問題 ## ##等待顯示先切換 ## ##編譯採用了makefile的使用了(尚未完工) ############################################################# github
############################################################# ##2014-02-19-1 ## ##修復BUG多任務的切換出錯 ## ##緣由在與當在GDT中添的LDT少*2形成LDT佔用了上一個LDT的值 ## ##修改位置進程代碼unsigned int ldt_position=LDT_BASIC+(proc_count-1)*8*2; ## ##錯誤緣由多是ldt末16位要爲0;或者是由於佔用了上個LDT的一半 ############################################################# 數組
############################################################# ##2014-02-23-1 ## ##嘗試添加一個系統調用的函數 ## ############################################################# 網絡
############################################################# ##2014-02-26-1 ## ##修復任務切換給TSS的堆棧問題 ## ##以前是給的用戶態堆棧修改後給的是任務保存信息的數據段 ## ############################################################# 函數
############################################################# ##2014-03-12-1 ## ##添加了對PCI的遍歷操做,接下來想處理對PCI網卡的驅動 ## ##遇到一個問題,調用C函數的時候,使用ebp要當心處理 ## ##緣由調用過程當中ebp保存esp,而後esp留空間做爲局部變量,最後lea ret ############################################################# spa
.net
########################################## ## ##後面的問題和解決思路就放在這裏了 ## ## 2014-02-08 ########################################## 設計
########################################## ##A:用戶態不能操做端口 ########################################## ## 1.打算採用系統調用的方式解決 ## 2.inx 0x80的用戶態實現 ## 3.經過數組的方式尋址 ## 4.若是有參數的問題如何解決 ##---------------------------------------- ## 修改於 2014-02-09 ##---------------------------------------- ## 仔細看了下以爲仍是很複雜的 ## 設計的問題有參數傳遞經過寄存器 ## 環境的保護,堆棧的切換 ########################################## code
########################################## ##B:多任務的添加 2014-02-09 ########################################## ## 1.要知道安裝的gdt位置或者個數是多少 ## 2.暫且規定每一個任務一個註冊的LDT ## 3.每一個任務的LDT個數有兩個 ## 4.決定共享JDT存放的位置了 ##########################################
########################################## ##C:打算實現一個網卡的驅動 2014-03-12 ########################################## ## 1.實現了PCI的遍歷 ## 2.接下來不詳 ##########################################
1.通訊的基礎瞭解
2.最終可以實現網絡鏈接、最簡單的網絡命令
3.更新之後放在這裏了 https://github.com/Soap13/PingPangOS/tree/OS/new%20os%20process