字元裝置之筆記-Poll機制分析

poll機制分析          

音頻處理的基本概念

採樣(sample):PCM audio不論是輸入還是輸出,都包含採樣,採樣達標聲音的一個聲道在某個特定時間點的振幅。 很多這樣的採樣組成了聲音。樣本是記錄音頻資料的最基本單位。對於CD audio,每秒有44100個採樣。採樣的尺寸從8bit 到64bit精度。採樣的格式也各式各樣:

Configure 參數選項詳解

         Linux環境下的軟體安裝,並不是一件容易的事情;如果通過原始碼編譯後在安裝,當然事情就更為複雜一些;現在安裝各種軟體的教程都非常普遍;但萬變不離其中,對基礎知識的紮實掌握,安裝各種軟體的問題就迎刃而解了。Configure指令碼組態工具就是基礎之一,它是autoconf的工具的基本應用。  與一些技巧相比,Configure顯得基礎一些,當然使用和學習起來就顯得枯燥乏味一些,當然要成為高手,對基礎的熟悉不能超越哦。  為此我轉載了一篇關於Configure選項配置的詳細介紹。

字元裝置驅動之Buttons-非同步通知(fasync)

 buttons.c#include <linux/fs.h>#include <linux/module.h>#include <linux/errno.h>#include <linux/kernel.h>#include <linux/init.h>#include <linux/cdev.h>#include <linux/ioport.h>#include

字元裝置驅動之Buttons-迴圈緩衝隊列

buttons.c#include <linux/fs.h>#include <linux/module.h>#include <linux/errno.h>#include <linux/kernel.h>#include <linux/init.h>#include <linux/cdev.h>#include <linux/ioport.h>#include

Ubuntu配置安裝Samba服務

         不管你是想你的虛擬機器和windows主機檔案分享權限設定還是你的純Linux作業系統和Windows之間實現檔案分享權限設定,Samba服務都是不錯的選擇。Samba服務在Ubuntu伺服器版本中預設並沒有安裝。很多人安裝Samba服務時並沒有考慮使用者權限,這樣是很危險的,任意使用者都可以登入訪問,你的資料被修改了都不知道。所以配置一個具有許可權的Samba很重要。在這裡分享一下我的經驗:一、Samba相關軟體包的安裝安裝Samba相關軟體包很方便的root@ubuntu:

字元裝置驅動之筆記-非同步通知(fasync)

 發訊號:1. 誰發2. 發給誰3. 發什麼4. 怎麼發5. 收到訊號後做什麼16th_signal_app發訊號:1. 誰發    a2. 發給誰  b3. 發什麼  SIGIO4. 怎麼發  int kill(pid_t pid, int sig);5. 收到訊號後做什麼: sighandler_t signal(int signum, sighandler_t handler);驅動和應用發訊號:1. 誰發    按鍵中斷服務程式2. 發給誰  使用按鍵的應用程式3. 發什麼 

字元裝置驅動之Buttons-迴圈緩衝隊列+非阻塞訪問

buttons.c#include <linux/fs.h>#include <linux/module.h>#include <linux/errno.h>#include <linux/kernel.h>#include <linux/init.h>#include <linux/cdev.h>#include <linux/ioport.h>#include

strace工具跟蹤系統調用和訊號

 * 掌握使用strace工具跟蹤系統調用和訊號的方法* 掌握各類記憶體測試載入器,比如memwatch(是不是和那個)*

Cache writings 策略

當系統寫資料到cache時,那麼必須在某個時間點把資料也寫到memory中,這個寫入時間點的控制就是我們要討論的cache寫策略兩種基本的寫策略是write-through和write-back:write-throughCPU向cache寫入資料時,同時向memory也寫一份,使得cache和memory的資料保持一致。優點是簡單,不會出現cache一致性的問題;缺點每次都要訪問memory,速度慢,要等到寫完memory才返回。write-backCPU更新cache資料時,只要在cache

V4L2 input/output方式

V4L2 API 定義了幾種資料轉送方式從video裝置讀寫資料,驅動要和應用進行資料交換就必須支援其中的一種經典的I/O方法是開啟V4L2 裝置後就可以使用的read()和write()方法。驅動可以不支援read/write方式,此時read/write操作會返回錯誤。其他的I/O方法必須通過協商的方式執行;streaming I/O模式:應用在調用VIDIOC_REQBUFS時確定是memory mapped還是user buffers;以及V4L2

核心移植之Part1

  一. 知識要點:1. 核心打補丁,編譯,UBOOT燒寫實驗2. 核心功能,目錄結構核心菜單,驅動直接編譯進核心和模組概念,結合Makefile,Kconfig分析3. 核心的啟動過程分析   3.1 核心產生過程解析   3.2 核心解壓縮、 vmlinux啟動流程(難,大致瞭解流程)   3.3 機器ID的比較   3.4 UBOOT參數傳遞的啟動參數解析   3.5 start_kernel()的典型過程           setup_arch()           rest_ini

Hadoop體繫結構指南

英文原文 HDFS Architecture Guide簡介Hadoop Distributed File System(HDFS)是一個運行在商用硬體平台上的Distributed File System。它和很多現存的Distributed File System有很多相似之處。當然,和其他的Distributed File

V4l2 capture時 USERPTR和MMAP的區別

視頻應用可以通過兩種方式從V4L2驅動申請buffer1. USERPTR, 顧名思義是使用者空間指標的意思,應用程式層負責分配需要的記憶體空間,然後以指標的形式傳遞給V4L2驅動層,V4L2驅動會把capture的內容儲存到指標所指的空間一般來說,應用程式層需要確保這個記憶體空間物理上是連續的(IPU處理單元的需求),在android系統可以通過PMEM驅動來分配大塊的連續實體記憶體。應用程式層在不需要的時候要負責釋放申請的PMEM記憶體。2.

字元裝置驅動之迴圈緩衝隊列+讀寫等待

 buffer.c#include <linux/fs.h>#include <linux/module.h>#include <linux/errno.h>#include <linux/kernel.h>#include <linux/init.h>#include <linux/cdev.h>#include <linux/ioport.h>#include

S5PV210 多媒體預留記憶體空間 2 – FIMD和G2D控制器

FIMD FrameBufferS5PV210_VIDEO_SAMSUNG_MEMSIZE_FIMD是為framebuffer預留的實體記憶體空間,下面的公式是framebuffer預留空間大小 4 表明 LCD屏的像素位元,一般為32bit; CONFIG_FB_S3C_BUFFERS是framebuffer的數目; S5PV210_LCD_WIDTH和S5PV210_LCD_HEIGHT是屏的寬高#define S5PV210_VIDEO_SAMSUNG_MEMSIZE_FIMD

字元裝置之Buttons-Poll機制

buttons.c#include <linux/fs.h>#include <linux/module.h>#include <linux/errno.h>#include <linux/kernel.h>#include <linux/init.h>#include <linux/cdev.h>#include <linux/ioport.h>#include

HDFS Append/Hflush/Read design

原文位置https://issues.apache.org/jira/secure/attachment/12445209/appendDesign3.pdf1. Design challenges對於hflush,HDFS需要使得未關閉檔案的最後一個block對所有readers可見。當前存在兩個挑戰:1.  讀一致性問題。在一個給定時間最後一個block的不同replicas可能包含不同的位元組數。在這種情況下HDFS如何提供一致性,更壞的情況下如宕機,如何保證一致性。2.

Watchdog driver API

A Watch Timer(WDT)是一個硬體電路可以用來在系統軟體發生錯誤的情況下reset電腦系統。通常來說一個使用者空間的daemon通過特定裝置/dev/watchdog,以一定的時間間隔來通知kernel的watchdog驅動系統仍然alive。驅動然後會通知硬體裝置一切正常,硬體WDT電路更新reset系統重啟的timeout時間。如果使用者空間失敗(RAM error, kernel

一個簡單的ALSA範例程式碼

代碼如下,注釋可參看原文http://users.suse.com/~mana/alsa090_howto.html#include <alsa/asoundlib.h>int main(){int ret;snd_pcm_t *pcm_handle;snd_pcm_stream_t stream = SND_PCM_STREAM_PLAYBACK;snd_pcm_hw_params_t *hwparams;char *pcm_name;pcm_name =

總頁數: 61357 1 .... 24341 24342 24343 24344 24345 .... 61357 Go to: 前往

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.