Time of Update: 2018-12-03
連結是一種在共用檔案和訪問它的使用者的若干目錄項之間建立聯絡的一種方法。Linux中包括兩種連結:永久連結(Hard Link)和軟連結(Soft Link),軟連結又稱為符號連結(Symbolic link)。永久連結可認為是一個檔案擁有兩個檔案名稱;而軟連結則是系統建立一個連結檔案,此檔案指向其所要指的檔案。1. 使用方式:ln [option] source_file dist_file -f 建立時,將同檔案名刪除.
Time of Update: 2018-12-03
1./usr/include/linux和/usr/src/linux/include/linux下的檔案數不同,檔案夾數也不同。例如/usr/include/linux沒有mosules檔案夾,而/usr/src/linux/include/linux有此檔案夾。 /usr/src/linux/include/linux是給編譯核心用的 /usr/include/linux是給編譯應用程式用的
Time of Update: 2018-12-03
tar-c: 建立壓縮檔案-x:解壓-t:查看內容 -r:向壓縮歸檔檔案末尾追加檔案 -u:更新原壓縮包中的檔案這五個是獨立的命令,壓縮解壓都要用到其中一個,可以和別的命令連用但只能用其中一個。下面的參數是根據需要在壓縮或解壓檔案時可選的。 -z:有gzip屬性的 -j:有bz2屬性的 -Z:有compress屬性的 -v:顯示所有過程-O:將檔案解開到標準輸出下面的參數-f是必須的-f: 使用檔案名字,切記,這個參數是最後一個參數,後面只能接檔案名。# tar -cf all.tar
Time of Update: 2018-12-03
如果你是以一般使用者名稱登入的,那麼在root許可權下刪除的檔案將不能使用介面清空資源回收筒,這樣的話就只能命令將之清空了 Red Hat 企業版 在命令列下 使用指令清空資源回收筒 [登入名稱@localhost:~]$su root //進入root使用者模式密碼:[rooto@localhost:~]#rm -rf /home/登入使用者名稱/.Trash
Time of Update: 2018-12-03
我的OS是fedora9 date [options][+format][date]$ date -s 02/01/2009修改日期(按月日年格式)$ date -s 13:56:00 修改時間(按時分秒格式)$ clock -r查詢CMOS時間$ clock
Time of Update: 2018-12-03
Linux下我們在使用裝置的時候,都會用到write這個函數,通過這個函數我們可以象使 用檔案那樣向裝置傳送資料。可是為什麼使用者使用write函數就可以把資料寫到裝置裡面 去,這個過程到底是怎麼實現的呢? 這個奧秘就在於裝置驅動程式的write實現中,這裡我結合一些原始碼來解釋如何使得一 個簡簡單單的write函數能夠完成向裝置裡面寫資料的複雜過程。
Time of Update: 2018-12-03
安裝arm-linux-gcc還是比較簡單的,我們看看ubuntu下的安裝步驟吧。1、將arm-linux-gcc的壓縮包arm-linux-gcc-4.3.2.tar.gz解壓縮;得到一個檔案夾,改名為arm-linux-gcc-4.3.22、arm-linux-gcc-4.3.2檔案夾拷貝到你自己系統的/opt;3、修改環境變數,把交叉編譯器的路徑加入到PATH。方法一:修改/etc/environment檔案(貌似這個不能立即生效)$sudo gedit
Time of Update: 2018-12-03
你可以在Linux中,敲入free命令獲得當前{tagshow(event)}">系統的記憶體使用量情況。#busybox freetotal used free shared buffersMem: 55636 52808 2828 0 3132Swap: 0 0 0Total: 55636 52808
Time of Update: 2018-12-03
編寫Linux應用程式要用到如下工具: (1)編譯器:GCC GCC是Linux平台下最重要的開發工具,它是GNU的C和C++編譯器,其基本用法為:gcc [options] [filenames]。 我們應該使用linux-gcc。 (2)調試器:GDB gdb是一個用來調試C和C++程式的強力調試器,我們能通過它進行一系列調試工作,包括設定斷點、觀查變數、單步等。 我們應該使用linux-gdb。 (3)Make GNU
Time of Update: 2018-12-03
我這裡說的ioctl函數是在驅動程式裡的,因為我不知道還有沒有別的場合用到了ioctl, 所以就規定了我們討論的範圍。為什麼要寫篇文章呢,是因為我前一陣子被ioctl給搞混 了,這幾天才弄明白它,於是在這裡清理一下頭腦。 一、 什麼是ioctl。 ioctl是裝置驅動程式中對裝置的I/O通道進行管理的函數。所謂對I/O通道進行管理,就 是對裝置的一些特性進行控制,例如串口的傳輸傳輸速率、馬達的轉速等等。它的調用個數
Time of Update: 2018-12-03
今天進入《Linux裝置驅動程式(第3版)》第四章調試技術的學習。 一、核心中的調試支援在前面已經建議過:學習編寫驅動程式要構建安裝自己的核心(標準主線核心)。最重要的原因之一是:核心開發人員已經建立了多項用於調試的功能。但是由於這些功能會造成額外的輸出,並導致能下降,因此發行版廠商通常會禁止發行版核心中的調試功能。為了實現核心調試,我在核心配置上增加了幾項: Kernel hacking ---> Magic SysRq key
Time of Update: 2018-12-03
裡有一個統計 http://www.remword.com/kps_result/china.php 點擊串連進去,可以看能到: Total patch sets of this kernel release: 1572365337 person contribute their works to this kernel release.Averagely, every person committed 29 patch sets.299(5.60%) Chinese people
Time of Update: 2018-12-03
最近涉及到linux核心,從自己遇到問題然後再解決是一個比較難忘的過程,下面的文章中提到的知識是我從資料上看來的,寫到這邊來的目的是一邊自己學習一邊給有同樣需要的同志提供協助!擷取核心的資訊的方法有好多種,具體有下面的一些常用的:1、擷取核心資訊比較流行的方法是通過syslog工具,它由兩個後台進程(klogd和syslogd組成),其中klogd負責從核心的日誌緩衝區(log
Time of Update: 2018-12-03
1、移植pjsipenv:fedora14arm-linuc-gcc:gcc version 4.5.1 (ctng-1.8.1-FA) #./configure \CC=arm-linux-gcc \CROSS_COMPILE=arm-none-linux-gnueabi- \--build=i386-linux \--prefix=/usr/local/pjsip \--host=arm-none-linux-gnueabi \--target=arm-none-linux-gnueabi
Time of Update: 2018-12-03
最近在看linux啟動時檔案系統的掛載,看到這篇文章覺得很不錯,就轉到這邊來,順便自己添加了一些檔案的路徑,便於理解!! 一:前言 前段時間在編譯kernel的時候發現rootfs掛載不上。相同的root選項設定舊版的image卻可以。為了徹底解決這個問題。研究了一下rootfs的掛載過程。特總結如下,希望能給這部份知識點比較迷茫的朋友一點協助。 二:rootfs的種類 總的來說,rootfs分為兩種:虛擬rootfs和真實rootfs.
Time of Update: 2018-12-03
/* * Ok, we have completed the initial bootup, and * we're essentially up and running. Get rid of the * initmem segments and start the user-mode stuff.. */ init_post(); return 0; } ramdisk_execute_command:在kernel解析引導參數的時候使用。如果使用者指定了init檔案路徑,
Time of Update: 2018-12-03
最近在搞移植,然後涉及到了linux的啟動,只好從uboot開始慢慢熟悉,現在將我的一點認識記錄下來,希望可以幫到遇到同樣問題的夥伴們!一個嵌入式系統從軟體上來看可以分為4大塊:引導載入程式,也就是我們常見的bootloader linux核心 ,就是一般的帶有自解壓的核心鏡像zImge
Time of Update: 2018-12-03
linux下lib說明一、lib類型: 與windows下靜態庫(.lib)和動態庫(.dll)一樣,linux同樣存在靜態庫(static library 檔案尾碼為.a)和共用庫(shared library 檔案尾碼為.so),在/usr/lib目錄下同時存在一個庫的靜態版本和動態版本。 "An archive (or static library) is simply a collection of object files stored as a single file.When
Time of Update: 2018-12-03
uclinux的啟動主要分為兩個階段: 第一部分bootloader啟動階段 第二部分linux 核心初始化和啟動階段 第一節:start_kernel 第二節:使用者模式( user_mode )開始,start_kernel結束 第三節:載入linux核心完畢,轉入cpu_idle進程 系統啟動過程中進程情況:1. init進程一般來說, 系統在跑完 kernel bootstrapping
Time of Update: 2018-12-03
getopt(分析命令參數) 相關函數 表標頭檔 #include定義函數 int getopt(int argc,char * const argv[ ],const char * optstring);函數說明 getopt()用來分析命令列參數。參數argc和argv是由main()傳遞的參數個數和內容。參數optstring 則代表欲處理的選項字串。此函數會返回在argv 中下一個的選項字母,此字母會對應參數optstring