原创 塊設備(二)

塊設備驅動(二) 塊設備數據訪問流程: generic_make_request () ------> __genenric_make_request() -----> q->make_request_fn(q, bio) 當有用戶需求來

原创 ARM時鐘

時鐘作用:系統中的設備需要時間進行同步。 時鐘的產生:PLL(鎖相環),利用外部晶體加上一些電路,對晶體產生的特定頻率進行分頻或加倍。晶振相對來說結構簡單,但是受頻率受到晶體制約,得到很高的頻率的晶振價格高,用鎖相環難度價格低些。 外部晶

原创 ARM中斷機制

ARM中斷機制 當事件發生時,通過一種機制告訴CPU現在發生什麼事件,CPU停下現在所做的工作進行處理。中斷處理流程:中斷控制器彙集各類外設發出的中斷信號,經過一段處理,選出一個信號,然後通知CPU;CPU保存當前運行環境,然後調用中斷服

原创 嵌入式CGI開發

CGI開發:CGI處理步驟1、通過Internet把用戶的請求送往服務器;2、服務器接受請求並交由CGI處理;3、CGI把處理結果送回服務器;4、服務器將結構傳回給用戶。 從瀏覽器發給服務器有兩種方法(Method屬性):get和post

原创 Uboot編寫(一)

初始化異常向量表: 異常:因爲外部或內部一些事件,導致處理器停下正在處理的工作,轉而處理這些發生的事件。共七種異常:reset,undefined instructions, Software Interruption(SWI),Pref

原创 塊設備(一)

塊設備驅動(一) 以數據塊爲訪問單位的設備,數據塊的大小不固定一般爲512的倍數,塊設備和字符設備的區別讀寫數據的基本單元不同,塊設備讀寫數據的基本單元爲塊,字符設備基本單元爲字節,塊設備可以隨機訪問,字符設備只能順序訪問。 塊設備在Li

原创 ARM ADC程序設計

ARM ADC程序設計 模擬信號:時間上連續,數值上也連續,數字信號:時間和數值上是離散的,而離散信號只有0或1。 S3c2440內部有8路A/D轉換通道AIN0~AIN7,但是轉換器只有一個,從8路中選出一路進行轉換,轉換精度10位(0

原创 Uboot 內存初始化(2440)

Uboot 內存初始化(2440) 內存分類,DRAM:需要定期充電(刷新),否則數據會丟失,存取速度慢。SRAM:具有靜止存儲功能的內存,不需要定期刷新操作就能保存它內部存儲的數據,存取速度快,CPU內部的steppingstone部分

原创 TCP1

TCP提供了一種面向連接的(建立終止的過程),可靠的(每個字節要確認)字節流服務,類似需要經歷一個“打電話”的過程,等到通信準備好後才發送數據,最後結束通話。UDP是把數據直接發出去,不管對方有沒有收到,就算UDP數據報沒有到達,也不會產

原创 TCP2

平靜時間        客戶端發送數據時,服務器突然斷電,很快服務器重啓新建連接,新包與以前的數據報混合,所以重啓後等待MSL時間主機不要發起新的連接。 FIN_WAIT_2        結束時服務器不發FIN,客戶一直處於FIN_WA

原创 多播 廣播 DNS TFTP

廣播和多播僅用於UDP,應用於多個接受者的情況,TCP源目一定是單播,某兩個主機之間建立連接,不支持廣播和多播。 廣播一個主機向網上所有其他主機發送幀如ARP,多播傳送給屬於多播組的多個主機。 從物理網絡提取數據包到接口卡(物理層):通

原创 ARM裸機串口UART

串口UART原理 異步通信:傳輸單位是一個字符,兩個字符之間時間間隔不固定,時間固定爲同步。 通信協議:通信雙方共同制定的規則,有數據格式:奇偶校驗位、停止位.....,通信流程上的規格. UART(universal asynchron

原创 UBoot流程分析

UBoot程序分析:程序入口分析--->第一階段BL1程序分析---->第二階段BL2程序分析 解壓Uboot源碼,打開頂層Makefile,每個Uboot所支持的開發板在Makefile中都會有一個配置選項, 在E:uboot\boar

原创 Ubuntu boa環境搭建

Ubuntu boa環境搭建 1:到http://www.boa.org/下載源碼,boa的版本是0.94.13 3: tar –jxvf boa-0.94.13.tar.gz   cdbia-0.94.13/src   把compat.

原创 編程

給定一個數組input[] ,如果數組長度n爲奇數,則將數組中最大的元素放到 output[]數組最中間的位置,如果數組長度n爲偶數,則將數組中最大的元素放到 output[]數組中間兩個位置偏右的那個位置上,然後再按從大到小的順序,