Time of Update: 2015-01-20
標籤:一,核心模組的概念經常在核心驅動代碼看到類似fs_init()等驅動初始化函數,那麼這個和module_init()函數的差別在哪裡,宏定義__define_initcall(level,fn)對於核心的初始化很重要,他指示編譯器在編譯的時候,將一系列初始化函數的起始地址值按照一定的順序放在一個section中。在核心初始化段,do_initcalls()
Time of Update: 2015-01-20
標籤:一,請求處理塊裝置的處理函數裡沒有read write等函數,所有對塊裝置的請求如讀取 寫入等都是通過request函數處理的。request函數的原型是void request(request_queue_t
Time of Update: 2015-01-20
標籤:一,ioctl使用執行個體ioctl使用執行個體驅動程式.h檔案 memdev.h [cpp] view
Time of Update: 2015-01-20
標籤:1,以下為範例程式碼: [cpp] view plaincopy #include <linux/device.h> #include <linux/module.h> #include <linux/kernel.h> #include <linux/init.h> #include&
Time of Update: 2015-01-20
標籤:一,註冊字元裝置 [cpp] view
Time of Update: 2015-01-20
標籤:1,gendisk結構體在linux核心中,使用gendisk結構體來表示一個實際的磁碟裝置的抽象,結構體定義如下所示: [cpp] view plaincopy struct gendisk { int major; //主裝置號 int first_minor;//次裝置號 int minors;
Time of Update: 2015-01-20
標籤:一,中斷處理函數中斷處理函數運行在中斷上下文,不可搶佔、調度。中斷上下文編程需要注意以下幾點: 不能睡眠或調用 schedule 放棄CPU 不能調用任何可能睡眠的函數,例如:擷取訊號量 不能訪問使用者空間資料,例如:copy_from_user,因為它不是在進程上下文中執行的。 執行時間儘可能短int request_irq (unsigned
Time of Update: 2015-01-21
標籤:linux IME ubuntu gnome 解決方案 最近想查看一下系統的一些資訊,點擊"關於這台電腦"發現顯示的是一些系統設定,而且還顯示的只有一部分,本人有點強迫症,就想解決這個問題:經過查詢網上的一些資料,發現這種現象可能是由缺少unity-control-center引起的,然後下面分享一下是
Time of Update: 2015-01-20
標籤:網卡配置:vi /etc/sysconfig/network-scripts/ifcfg-eth0DEVICE=eth0HWADDR=00:0C:29:D4:A4:B1TYPE=EthernetUUID=45744d6c-8ec4-4c68-9342-384515579b07ONBOOT="yes"NM_CONTROLLED=yesBOOTPROTO="static"IPADDR="192.168.1.120"GATEWAY="192.168.1.1"NETMASK="255.255.25
Time of Update: 2015-01-20
標籤:Linux啟動過程 傳說】散人--南寧1,開機,讀取BIOS並進行自我檢測2,透過BIOS取得第一個開機裝置,讀取MBR取得開機管理程式3透過開機管理程式,取得KERNEL(核心)載入記憶體且偵測系統硬體4核心計動呼叫INIT的程式5INIT程式開始執行系統初始化6依據INIT的程式進行daemon start7載入本機設定22:19:25【傳說】Ed1 2015/1/20 22:19:25啟動第一個程式init,讀取設定檔f
Time of Update: 2015-01-20
標籤:LoadRunner監控Linux rstat協議允許網路上的使用者獲得同一網路上各機器的績效參數。 需要下載3個包: (1)rsh-0.17-14.i386.rpm (2)rsh-server-0.17-14.i386.rpm (3)rpc.rstatd-4.0.1.tar.gz 一、安裝rsh 查看是否安裝並卸載rsh [[email protected] /]# rpm –qa |grep rsh --查看是否安裝rsh
Time of Update: 2015-01-20
標籤:wget是一個從網路上自動下載檔案的自由工具tar -zcxf命令是把檔案先打包 再壓縮tar -zvxf命令是把這個檔案解壓縮 再打包cd ..:返回上一級退出正在編輯的檔案:wq;大寫 Z Z上傳檔案:secureCRT-檔案-串連sftp標籤頁-lls(本地目錄)-cd到指定目錄-put檔案遠程登入linux伺服器:login as:root。在win7下壓縮為zip,在linux下解壓unzip。linux下開一個連接埠:nc -lp 1723
Time of Update: 2015-01-20
標籤:一.檔案和目錄許可權 在Linux系統中,使用者可以對每一個檔案或目錄都具有存取權限,這些存取權限決定了誰能訪問,以及如何訪問這些檔案和目錄。1.檔案許可權簡介
Time of Update: 2015-01-20
標籤:概述任務調度:是指系統在某個時間執行的特定的命令或程式任務調度分類:- 系統工作:有些重要的工作必須周而復始地執行,如病毒掃描等- 個別使用者工作:個別使用者可能希望執行某些程式 任務調度命令設定任務調度檔案:/etc/crontab設定個人任務調度,執行crontab ‐e命令,接著輸入任務到調度檔案【案例】5 * * * * ls ‐l /etc/ > 
Time of Update: 2015-01-20
標籤:unixLinux下的sort命令預設將檔案中的每一行為單位,進行排序,然後輸出。具體地,就是從每行的第一個字元開始,依次按ASCII碼值進行比較,最後將結果按升序排序輸出。1、sort常用選項-u 在排序的時候忽略相同的行,類似於uniq命令,不過uniq命令只能跳過相鄰的相同行,並不能進行排序。-n 按照數字大小排序,而不是文本的ascii碼順序。-r 反序,也就是降序。-t 指定資料行分隔符號,注意這裡的分隔字元只能是一個字元,不能是多個字元,-t, --
Time of Update: 2015-01-20
標籤:一,主裝置號和次裝置號代表的含義?linu核心是如果根據主裝置號找驅動,次裝置號找裝置的。答:通常一個主裝置號代表一個驅動,比如在block裝置中,一個主裝置號代表一個emmc裝置,不同次裝置號代表的是不同的分區Linux核心允許多個驅動共用一個主裝置號,但更多的裝置都遵循一個驅動對一個主裝置號的原則。核心維護者一個以主裝置號為key的全域雜湊表,而雜湊表中資料部分則為與該主裝置號裝置對應的驅動程式(只有一個次裝置)的指標或者多個次裝置驅動程式組成的數組的指標(次裝置共用主裝置號)二,編寫
Time of Update: 2015-01-20
標籤:http://www.cnblogs.com/hanyan225/archive/2010/10/28/1863854.html1,概念DMA是一種無須CPU的參與就可以讓外設與系統記憶體之間進行雙向資料轉送的硬體機制。使用DMA可以是系統CPU從實際的IO資料轉送過程中擺脫出來,從而大大提供系統吞吐率。DMA方式的資料轉送由DMA控制器(DMAC)控制,在傳輸期間,CPU可以並發地執行其他任務,當DMA結束後,DMAC通過中斷通知CPU資料轉送已經結束,然後由CPU執行相應的中斷服務程式
Time of Update: 2015-01-20
標籤:1,區別塊裝置和字元裝置:塊裝置是系統中能隨機訪問固定大小的資料片的硬體。,扇區是所有塊裝置物理上的最小可定址單位,通常大小為512Byte,塊是檔案系統的最小定址單位,大小是扇區的整數倍,同時不能超過一個頁的大小~操作塊裝置的時候需要在記憶體中有一個對應的緩衝區,用struct buffer_head結構體表示。 [cpp] view
Time of Update: 2015-01-20
標籤:1,在/proc檔案系統下建立節點的APIhttp://www.cnblogs.com/ziziwu/archive/2011/10/20/2218975.html struct proc_dir_entry *create_proc_entry (const char *name, mode_t mode, struct proc_dir_entry *parent); 其中參數分別是 /proc 檔案名稱,掩碼,父目錄。[cpp] view
Time of Update: 2015-01-20
標籤:1,在/sys/class/目錄下建立一個裝置節點,比如建立一個class_test_usb的裝置節點[cpp] view plaincopy static struct calss *test_class; test_class = class_creat(THIS_MODULE,"class_test_usb");