Time of Update: 2018-12-05
新領了一台Dell機器,是ATI的顯卡,在上面使用linux,簡直是太淒慘了。裝了我好幾次機。對於 Ubuntu9.04,安裝盤啟動,GRUB的圖形介面根本看不到,無法安裝。只要安裝fedora10,按正常的安裝方式,花屏,無法進行,幸好,fedora10至少還能正常顯示GRUB菜單,按tab進行編譯,增加"linux
Time of Update: 2018-12-05
文章目錄 CPU的介紹匯流排和介面(Bus and Interface)I/O存貯網路系統監控 這幾天進度比較慢,讀書有些枯燥,開始看第三章:硬體支援。我看了一下第一版的CHM,不知道是不全呢還是第二版豐富了很多。在這章中將被討論沒有MMU的結構,雖然這已經在linux
Time of Update: 2018-12-05
這段時間一直忙著考研的事情,前段時間為了要去北京參加那個央視的大學生機器人大賽,基本是佔用了我所有的時間,我做得是程式設計工作,用的是windows平台,因為這裡地震了,為了能夠參加比賽,必須使用自己成熟的技術,所以為了這個目的,我們的機器人用的是成熟的技術,我為此寫了個機器人的虛擬平台,可以模擬機器人在賽場上的運行狀態,感覺效果還是不錯,可惜的是因為種種原因我們只進了八強,而沒能取得更好的成績,現在比賽完了,有時間了,決定考研,我想的是留校讀研,我們的學校是西南科技大學,雖然研究生教育外界評價
Time of Update: 2018-12-05
一、使用者管理 1、查看使用者帳號檔案 /etc/passwd 2、shadow /etc/shadow 3、添加使用者 $ useradd 用法:useradd -o -g 0 -u 0 使用者名稱 4、使用passwd命令初始設定使用者口令 用法:passwd
Time of Update: 2018-12-05
尋找目錄中檔案的字串 grep -n \"str\" -r ./ 這是尋找目前的目錄下以及下轄子目錄下所有包含str字串的檔案 如何用grep在本目錄及其所有的子目錄下的檔案裡面尋找字串abc? grep -R abc * 要找隱藏檔案,可以: grep -R abc * .* find ./ -type f|xargs grep abc 以前寫的一個小指令碼,不過沒用grep,不知是否合lz用 #!/bin/bash
Time of Update: 2018-12-05
介紹:indent命令可辨識C的原始代碼檔案,並加以格式化,以方便程式員閱讀。文法:indent [參數][源檔案] indent [參數][源檔案][-o 目標檔案]選項介紹: -bad: 在聲明區段或加上空白行。 -bap: 在程式或加上空白行。 -bbb: 在注釋區段後加上空白行。 -bc: 在聲明區段中,若出現逗號即換行。 -bl: if(或是else,for等等)與後面執行區段的”{“不同行,且”}”自成一行。 -bli<縮排格數>:
Time of Update: 2018-12-05
【轉】http://rainbird.blog.51cto.com/211214/109308 vi功能太強大了,只列出筆者常用的,並陸續增加中. :redo 在Linux系統中,取消撤銷操作恢複文本修改。在標準的UNIX系統中,第2個u命令取消第1個u命令,結果就是一個“redo”12| 將游標定位到當前行的第12列cw 僅僅修改游標處的單詞(刪除單詞,然後進入追加模式中,以在被刪除單詞的位置添加文本) s(小寫) 替換單個字元 S(大寫) 替換整行文本 cc 替換整行文本(同S):12,35
Time of Update: 2018-12-05
在Linux中,管道是一種使用非常頻繁的通訊機制。從本質上說,管道也是一種檔案,但它又和一般的檔案有所不同,管道可以克服使用檔案進行通訊的兩個問題,具體表現為: · 限制管道的大小。實際上,管道是一個固定大小的緩衝區。在Linux中,該緩衝區的大小為1頁,即4K位元組,使得它的大小不象檔案那樣不加檢驗地增長。使用單個固定緩衝區也會帶來問題,比如在寫管道時可能變滿,當這種情況發生時,隨後對管道的write()調用將預設地被阻塞,等待某些資料被讀取,以便騰出足夠的空間供write()調用寫。 ·
Time of Update: 2018-12-05
繼續努力,開始學習第二章:基本概念。 對於嵌入Linux,需要先熟悉Linux系統,有很多,也將有更多的Linux系統,因此不要限制與某個單一的類型。目前最大的三個是RedHat,Novell(SLES)和ubuntu。如果我們選擇流行的Linux版本作為開發平台(可以選擇windows或者Unix作為workstation),一般基於Eclipse的映像開發環境。
Time of Update: 2018-12-05
在Linux中,GCC是一個常用的編譯工具。不過gcc編譯的時候有很多特殊的參數的,比如編譯成動態連結程式庫什麼的,這裡我想提一下如何利用gcc的警告功能來提高代碼編寫品質。
Time of Update: 2018-12-05
toolchain這個詞不好翻譯,姑且譯為工具鏈。O'Reilly建議,即使我們的開發機和target是相同的結構(例如都是x86),仍然建議使用通用的工具鏈作為跨平台的開發環境,不使用在開發機上內建的工具鏈,這是為了保證工具鏈和特定的工作站環境無關,使得工作站軟體升級後不會引起在我們的嵌入式應用崩潰,另外可以使用一些針對target的更好的更有效工具,例如另一個新的C庫。有一些廠家提供嵌入式Linux包的同時也提供了開發環境,另一些硬體廠家也提供基於他們的工具鏈。有一種方式是使用Eclips的
Time of Update: 2018-12-05
Linux中的hostname設定相對來說是比較簡單的,不過需要配置好幾個地方。 首先需要切換到root使用者下,然後編輯/etc/sysconfig/network檔案,比如內容如下 NETWORKING=yes HOSTNAME=myhostname 下面我們把myhostname改正過來,改成想要的hostname就可以了,比如newhostname。
Time of Update: 2018-12-05
由於ubuntu是新裝的,有一些問題,也記錄如下:1、安裝中文軟體包:System->administration>language setting, to recover chinese language package2、安裝IME,IBUS的有問題,改為SCIM刪除IBus的輸入方,載入scim-pinyin3、Empathy有問題,apt-get install pidgin對於MSN,由於認證修改,需要重新下載cd ~/.purple/certificates/x509
Time of Update: 2018-12-05
在Linux中,我們可以通過top命令查看系統狀況,以及每一個進程的具體狀況。不過另外也可以利用vmstat命令查看到一些另外的資訊。 vmstat命令可以查看memory情況,swap使用方式,io使用方式,CPU以及一些其他System的狀況。以上的每個大類都有好幾個小條目可以查看。比如memory大類中,可以看到現在空餘多少memory,還有多少緩衝什麼的。CPU也可以看到使用了多少。多少在空閑著。
Time of Update: 2018-12-05
通用的linux提供一個已經編譯好的kernel,但是在嵌入式作業系統中,這種方式比較少用。我們將提供一個儘可能簡單的kernel configuration,去除我們不需要的功能。我們首先需要選擇linux的kernel。我們可以在http://www.kernel.org/中得到官方(official,也成為upstream或者 mainline)的linux核心版本,他是Torvalds以及全球的其他自願者提供。雖然2.4的版本仍在很多裝置上使用,如果是新的開發應基於
Time of Update: 2018-12-05
使用交叉編譯環境 建立好自己的交叉編譯環境,就可以進行kernel的編譯。這部分也是對O'Reilly的《Building Embeded Linux System》的第五章的一個實踐。我們仍使用moblin作為例子。他已經為kernel提供了config檔案的例子。對於menlow,需要將config-generic和config-menlow進行合并。可以在generic的基礎上,通過手工根據menlow的配置來改動,也可以使用moblin提供的merge.pl,merg.pl
Time of Update: 2018-12-05
對於RPM包,常用的命令是rpm和rpmbuild。rpm的一些常用命令記錄如下:rpm -e xxxxx,刪除某個rpm包rpm -q xxxxx,查詢某個rpm包是否存在,如果存在,給出rpm詳細的名字。但是有時我們有時需要模糊查詢,不確切知道rpm包的名字,這是我們可以用yum search xxx來進行檢索,yum給出在repo中的相關的包,同時也會給出本地的包(如果這個包不是repo中標準的包,另外安裝的,也會給出)。我們也可以通過rpm -qa 得到已安裝的所有包的名字,rpm
Time of Update: 2018-12-05
在fedora裡面,雙擊iso檔案,可以建立一個虛擬盤,我想將裡面的東西拷貝出來,包括檔案夾。昨天cp檔案還可以,不知道今天出了什麼問題,不成功,cp出來的大小為0。惟有自己動手來mount。在案頭上,暗右鍵,將檔案卷卸載建立我們需要mount的目錄,一般防止在/mnt裡面。例如mkdir /mnt/isosudo mount -o loop **************.iso
Time of Update: 2018-12-05
這段時間不段地裝機器,發現如果通過fedora 10的自動update,很容易引起機器死掉,在下一次重啟的時候無法進入入行介面,黑屏啊(慘!)有些linux安裝過程中常使用的命令或者配置記錄如下:1、讓sudo啟用在root下,將/etc/sudoers 440的許可權進行修改,在最後增加wei
Time of Update: 2018-12-05
一、QT簡介Qt是一個跨平台的C++圖形化使用者介面庫,.由挪威TrollTech公司出品,目前包括Qt/X11,基於Frambuffer的Qt Embedded,快速開發工具Qt Designer幾國際化工具Qt Linguist等.Qt支援Unix及Linux系統,還支援Windows NT/Windows 2k及Qindows 95/98平台.Qt的良好封裝機制使其模組化程度非常高,可重用性較好.Qt/Embeded是面向嵌入式系統的Qt版本,是Qt的嵌入式Linux視窗,是完整的自包含