如上圖所示,alsa驅動最終會被上層應用調用,這是通過alsa-lib實現的,alsa-lib為alsa-driver封裝了許多API,通過這些API,上層應用可以調用到驅動層。而alsa-lib中的這些API,我們可暫時把他們當做一個黑盒子,裡面具體實現不需要去關注,下面以linux-2.6.32中ALSA調用函數關系說明其架構。先分析ALSA驅動的注冊過程。
一、ALSA驅動的注冊
注冊流程查看上圖,具體的注冊過程不在此贅述。
OpenCV2.3.0編譯後運行的問題
RabbitMQ 和 Kafka 簡單的性能測試
C中位域結合對齊(pragma)的例子及解釋
Java序列化機制
封裝LDAP 增刪改查 方法
TCMalloc:線程緩存的Malloc
Linux 下smi/mdio總線通信
AngularJS:一行JS代碼實現控件驗證效果
變得安全?谷歌借Linux內核提高安卓免疫力變得安全?谷歌借Linux內核提高安卓免疫力導讀Android安全
Hibernate關聯映射---多對一實例分析(單項關聯)
編譯APACHE+PHP+MYSQL的一個腳本
Linux安裝使用jprofiler6分析服務器應用狀態
Android中設置EditText獲得焦點時不彈出軟鍵盤
FreeBSD下建立IPSec/client2LanVPN的說明
Iptables來限制上QQ
Python中的運算符
CentOS7 安裝後的一些配置
Android UI---界面開發推薦顏色
Java調優之JVM和線程的內存分析
Madplayer移植到mini2440
Spring MVC訪問.js,.css,.img等靜態文件
Android 屏幕旋轉 處理 AsyncTask 和 ProgressDialog 的最佳方案
Android入門:通過JSON數據與服務器進行通信
Java中Class與Object及反射機制
Linux下的TCP通信
Go 語言的分布式讀寫互斥
Android依賴注入:Google Guice on Android