原创 linux 用戶空間電源管理 (二)

三.Server Server本身維護一個定時器,當定時器超時,就讓系統進入節能模式。Server會接受其它進程的重置定時器的命令,阻止系統進入節能模式。 Server主要功能包括: l        當定時器超時,讓系統進入節能模式。

原创 linux 用戶空間電源管理 (三)

2) 庫和接口函數        對於更上一層的應用程序而言,當其註冊了自己的模塊進入電源管理中之後,會調用一些接口來進行設置,那麼我們該設置那些接口給應用層調用呢?(該部分在client中實現) i)        獲取定時器A的超時時

原创 linux 文件I/O 編程

2011-4-7 一.文件I/O編程 1.不帶緩存的文件IO操作 1.基本操作        #include<sys/types.h>        #include<sys/stat.h>        #include<fcntl

原创 uboot之usbtty (二)

1.1.2.2                   Endpoint Transfer Descriptor(dtd) Dtd描述需要接收或發送的數據格式,結構如下,   Next link pointer存放下一個dtd所在的物

原创 linux 一些機制 (三)

目錄 一.Address_space 二.Dup系統調用 三.Proc應用 一.Address_space        內核空間到用戶空間 __user 這個特性,即__attribute__((noderef, address_spa

原创 內核中的死鎖問題--當UHCI遇上OHCI

上次我上網查資料,突然彈出來一個網頁,很黃很暴力,和張殊凡小朋友一樣,我趕緊給關了.不過,從此……我天天上網查資料.今天我就給大家介紹一下我的成果. 比如有一個網站叫做bugzilla.kernel.org,這是一個Linux hacke

原创 linux一些機制的總結

好久沒寫博文了,最近開始努力的寫吧,有總結纔有提高。   1.  Work   將任務添加到系統的工作隊列中 Struct work_struct  cd_wq; INIT_WORK(&cd_wq,work_func); Schedu

原创 linux 進程操作

一.進程創建相關 1. 程序是靜態的,沒有執行的概念,進程是動態的,是程序的執行過程,包括動態創建,調度和消亡的過程。        2.   PCB task_struct #include<linux/sched.h>       

原创 linux 用戶線程

一.Linux下線程概述        進程是系統中程序執行和資源分配的最小單位。每個進程都擁有自己的數據段,代碼段和堆棧段。這就造成了進程在進行切換等操作時需要有比較負責的上下文切換等動作。爲了進一步減少處理機的空轉時間支持多處理器和減

原创 uboot之u盤枚舉

              UBOOT 之U盤枚舉 簡單的說下U盤的枚舉過程,一下是我的U盤的枚舉截圖     在接口描述符,09 04 00 00 03 08 06 50 00,其後爲三個端點描述符 03非0端點的數目 兩個批量

原创 linux syscall

2011-4-18 這部分是在學習電源管理程序時記錄的一些碎片 linux內核跟蹤 syscall tracer(1) syscall tracer是用於跟蹤系統調用的,它會檢測所有系統調用的入口和出口,再將相關的信息保存到ring

原创 uboot之u盤啓動kernel

AT91SAM9260 U-BOOT OHCI   對於 U 盤啓動 kernel, 先通過了解整個框架,在細說 USB 枚舉(包括 HUB ) ,OHCI 等內容   一.            總體流程 在 U-BOO

原创 linux 進程通信

2011-3-27 現在linux下的進程間通信方式主要有以下幾種 (1)                管道以及有名管道: 管道可以用於有親緣關係的進程通信,而有名管道除了具有管道的功能外,還允許無親緣關係進程間通信。 (2)     

原创 uboot之cdc_acm枚舉

一. 總述 相對而言,usb從設備驅動比較好寫,只要在中斷服務程序中對端點數據進行相應的處理就可以。        對於U-BOOT而言,由於禁止中斷,所以使用輪詢的方式查詢中斷寄存器,查看中斷是否發生。由於主設備(如PC HUB)在發送

原创 linux 關機和重啓 機制

目錄: Linux 關機和重啓機制 一.sys_reboot 二.apm capi   Linux下的關機和重啓可能由兩種行爲引發,一是通過用戶編程,另外一種是系統自己產生的信息。用戶和系統進行交互的方式有兩種,一種是系統調用sys_re