新聞中心
linux驅(qū)動設(shè)備一般有四類,即硬件設(shè)備驅(qū)動、文件系統(tǒng)驅(qū)動、網(wǎng)絡(luò)設(shè)備驅(qū)動和存儲設(shè)備驅(qū)動。其中,硬件設(shè)備驅(qū)動是最重要的,它通過官方的API函數(shù)來控制和驅(qū)動硬件設(shè)備。具體的設(shè)備有:CPU、內(nèi)存、顯卡、磁盤、蜂鳴器、U盤及其他I/O端口設(shè)備等等。下面將對硬件設(shè)備驅(qū)動的一些常用的API函數(shù)做一個簡要概述:

十余年的鄂倫春網(wǎng)站建設(shè)經(jīng)驗,針對設(shè)計、前端、開發(fā)、售后、文案、推廣等六對一服務(wù),響應(yīng)快,48小時及時工作處理。營銷型網(wǎng)站建設(shè)的優(yōu)勢是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動調(diào)整鄂倫春建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計,從而大程度地提升瀏覽體驗。成都創(chuàng)新互聯(lián)公司從事“鄂倫春網(wǎng)站設(shè)計”,“鄂倫春網(wǎng)站推廣”以來,每個客戶項目都認(rèn)真落實執(zhí)行。
1. register_readl/writeX:用于注冊外設(shè)的讀寫操作,常用于CPU寄存器訪問,例如:
static void register_readl(unsigned long addr, unsigned long *val)
{
*val = readl(addr);
}
static void register_writel(unsigned long addr, unsigned long val)
{
writel(val, addr);
}
2. request_irq/free_irq:用于注冊硬件設(shè)備的中斷,例如:
static void request_irq(IRQn_Type irq, void (*handler)(void), void *dev)
{
NVIC_SetPriority(irq, 10);
NVIC_EnableIRQ(irq);
// 將指定的處理函數(shù)掛載到中斷任務(wù)鏈上
NVIC_SetVector(irq, handler);
// for HSV00xx set FIQ
NVIC_SetTarget(irq, 1);
// for HSV00xx enable IRQ
NVIC_EnableIRQ(irq);
}
static void free_irq(IRQn_Type irq)
{
NVIC_DisableIRQ(irq);
// for HSV00xx disable FIQ
NVIC_ClearPendingIRQ(irq);
}
3. request_DMA/free_dma:用于注冊硬件設(shè)備的DMA,例如:
static int request_dma( DMAC_Channel dma, int dir, int mode, unsigned int size )
{
DMAC_SetTransferSize( dma, size );
// 設(shè)定傳輸模式
DMAC_SetTransferMode( dma, mode );
// 設(shè)定TRX_TYPE, 為Memory/Peripheral模式
DMAC_SetTransferType( dma, dir );
// 設(shè)定DMA傳輸接口
DMAC_SetTransferInterface( dma, 0, 0, 1, 0 );
// 啟動DMA
DMAC_Start( dma );
return 0;
}
static void free_dma( DMAC_Channel dma )
{
DMAC_Stop(dma);
}
除了以上硬件設(shè)備驅(qū)動外,Linux還提供了文件系統(tǒng)驅(qū)動、網(wǎng)絡(luò)設(shè)備驅(qū)動和存儲設(shè)備驅(qū)動。文件系統(tǒng)驅(qū)動實現(xiàn)文件系統(tǒng)的功能,例如ext2、ntfs、fuse等;網(wǎng)絡(luò)卡驅(qū)動實現(xiàn)網(wǎng)絡(luò)的功能,功能如網(wǎng)卡的控制、收發(fā)包等;存儲設(shè)備驅(qū)動實現(xiàn)硬盤等外設(shè)的操作,支持u盤、移動硬盤、sd卡等等。以上就是linux驅(qū)動設(shè)備的分類情況。
創(chuàng)新互聯(lián)(cdcxhl.com)提供穩(wěn)定的云服務(wù)器,香港云服務(wù)器,BGP云服務(wù)器,雙線云服務(wù)器,高防云服務(wù)器,成都云服務(wù)器,服務(wù)器托管。精選鉅惠,歡迎咨詢:028-86922220。
分享標(biāo)題:深入探討:Linux驅(qū)動設(shè)備的分類(linux驅(qū)動設(shè)備的分類)
文章鏈接:http://m.fisionsoft.com.cn/article/ccspjoj.html


咨詢
建站咨詢
