原文:[自制操作系統] 第17回 編寫鍵盤驅動

目錄 一 前景回顧 二 實現鍵盤輸入的中斷函數 三 編寫鍵盤驅動 四 實現環形輸入緩沖區 五 運行測試 一 前景回顧 上一回我們完成了鎖的實現,並且利用鎖優化了終端輸出函數。這一回我們來實現鍵盤的輸入,為后面的用戶交互功能打好基礎。 二 實現鍵盤輸入的中斷函數 首先我們需要知道鍵盤是屬於外設,所以對應的中斷屬於外部中斷。在講中斷那一章節時,我們知道了外部中斷的處理流程,不過對於鍵盤的輸入中斷,還需 ...

2022-07-11 21:39 0 1449 推薦指數:

查看詳情

8.2 USB鍵盤驅動編寫和測試

目標:根據USB驅動分析和上節的USB鼠標驅動編寫鍵盤驅動,並測試。 一、原理分析 1. 首先通過打印usb_buf[i]中的8字節數據,看一下按鍵按下之后會接收到什么。 1)通過按完所有鍵盤按鍵打印的結果可知,有8個按鍵會打印在usb_buf[0]里,即: ctrl左鍵 ...

Fri Jan 04 03:29:00 CST 2019 0 845
[自制操作系統] 第14 內存管理系統

目錄 一、前景回顧 二、位圖bitmap及函數實現 三、內存池划分 四、運行 一、前景回顧   前面我們已經花了一個回合來完善了一下我們的系統,包括增加了makefile,ASSERT以及一些常見的字符串操作函數。關於makefile,還是我以前學習Linux系統編程的時候學了一點點 ...

Fri Jul 08 04:30:00 CST 2022 0 668
[自制操作系統] 第18 實現用戶進程(上)

目錄 一、前景回顧 二、任務切換相關 三、實現TSS 四、運行測試 一、前景回顧   在上一我們已經實現了鍵盤驅動編寫和環形緩沖區的實現,現在讓我們來想這么一個問題:   一直以來我們的程序都在最高特權級0下工作,這意味着任何程序都和操作系統平起平坐,可以改動任何資源。如果不改 ...

Tue Aug 16 05:20:00 CST 2022 0 589
[自制操作系統] 第15 實現內核線程

目錄 一、前景回顧 二、線程的實現 三、線程的切換 四、運行測試 一、前景回顧   上一我們實現了內存管理系統,說實話代碼還是比較多,看起來還是比較頭疼的,不過為了知識這都是小事。這一節終於可以來實現我們的線程了,以前學操作系統的時候,聽到的最多的就是什么線程,進程等,這一我們來自 ...

Fri Jul 08 22:28:00 CST 2022 0 714
[自制操作系統] 第16 鎖的實現

目錄 一、前景回顧 二、鎖的實現 三、使用鎖實現console函數 四、運行測試 一、前景回顧   上回我們實現了多線程,並且最后做了一個小小的實驗,不過有一點小瑕疵。   可以 ...

Sun Jul 10 00:32:00 CST 2022 0 522
自制操作系統14】實現鍵盤輸入

一、到目前為止的程序流程圖   為了讓大家清楚目前的程序進度,畫了到目前為止的程序流程圖,如下。(紅色部分就是我們今天要實現的) 二、簡單打通鍵盤中斷   既然要打通鍵盤中斷,那必然需要你回顧一下 【自制操作系統08】中斷 所講述的外部中斷的流程,下面我把圖貼上。 如圖所示 ...

Sun Mar 22 07:47:00 CST 2020 3 1585
自制操作系統

自制操作系統Antz day09——實現內核 (下) 實現圖形化界面 https://www.cnblogs.com/LexMoon/p/antz09.html Antz系統更新地址: https://www.cnblogs.com/LexMoon/category/1262287.html ...

Tue Aug 07 06:58:00 CST 2018 0 859
USB鍵盤驅動分析

簡介 本文介紹USB驅動程序編寫的流程,分析一個鍵盤的USB程序,基於linux-2.6.39 USB驅動概要 分層 主機層面的USB驅動的整體架構可以分成4層,自頂到下依次是 1、USB設備驅動:本文主要講述的內容,利用USB核心提供的編程接口編寫具體硬件設備與系統的交互邏輯 ...

Tue May 14 04:56:00 CST 2019 0 531
 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM