• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            xiaoguozi's Blog
            Pay it forword - 我并不覺的自豪,我所嘗試的事情都失敗了······習慣原本生活的人不容易改變,就算現狀很糟,他們也很難改變,在過程中,他們還是放棄了······他們一放棄,大家就都是輸家······讓愛傳出去,很困難,也無法預料,人們需要更細心的觀察別人,要隨時注意才能保護別人,因為他們未必知道自己要什么·····

            1. Win7與Ubuntu的安裝順序。如果你想裝這兩個系統,那么先裝Win7,再裝Ubuntu,就不會出現我上面的問題,可能是Grub比較親和的緣故吧,呵呵...

            2. 如果出現了我上面的那種情況,用Grub4Dos來解決你的問題。去我的資源 里下載吧。注意,Grub4Dos文件夾下面有3個文件:g2ldr,g2ldr.mbr和隱藏的boot.ini。把這3個文件復制到Win7的主盤下面,然后重啟進入Ubuntu之后,輸入以下命令:

            1. /* 
            2. sudo grub-install /dev/sda 
            3. sudo update-grub 
            4. */  

            然后,再回到Win7中把Grub4Dos刪除掉。這樣重啟就搞定了!

            3. 如果你出現了上面的問題,用live CD安裝了Grub,開機出現了Grub的命令提示符界面。輸入以下命令,進入Win7:

            1. /* 
            2. root noverify (hd0, 0) 
            3. chainloader +1 
            4. boot 
            5. */  

            然后下載mbrFix小工具修復mbr,然后把mbrFix放到C盤根目錄下,然后打開cmd,切到C盤下面,運行這個命令:

            1. /*  
            2. mbrfix /drive 0 fixmbr  
            3. */  

            這樣那個討厭的Grub命令提示界面就消失了。然后,按照第2步執行就好了。


            好了,這樣Win7和Ubuntu就都順利出現在開機之后的Grub列表 中了:) 最后,說下申請聯想免費Win7升級盤的事情。前段時間,各個OEM廠商都給用戶一個win7的免費升級計劃,包括HP,Dell還有聯想等廠家。于是, 大家都去申請了,搞笑的是,申請的時候,用戶完全可以用虛假信息,以每張不到60元的價格“騙取”一張Win7旗艦版的安裝光盤和廠家驅動盤。但是,后來 這個事兒讓MS知道了,MS大怒。所以,后來用戶如果要申請的話,需要提供購買筆記本或者臺式機的證明,而且必須滿足MS的升級規定。我就是在MS大怒之 后,不識相地去申請的,結果收到了聯想否決的email,說我的小黑出廠是安裝最低版的Vista,所以無法申請Win7光盤(因為當時在美國買的時候, 高版本的Vista要加不少錢,我沒加:)。

            http://m.shnenglu.com/Files/guojingjia2006/Grub4Dos_mbrFix.rar

            posted @ 2010-08-10 13:29 小果子 閱讀(1061) | 評論 (0)編輯 收藏
            今天剛拿到tq2440的板子,給我的第一印象就是“小”,比我想象的小多了,淘寶看那么大的一張照片,拿到手里的是這么小的一個家伙,不過雖然小,還是“忍忍”吧。= =,選擇買他的原因也是網上關于s3c2440的資料比較多,所以作為學習還是不錯的

            拿到板子后,清點了下資料,沒什么問題,這里不得不說,資料確實豐富,14張DVD,不過內容怎么樣,待定,不過至少使用手冊還是不錯的。講的比較詳細。所以花了3,4個小時,基本知道大概流程,于是開始玩板子。

            這里說下自己的一點體會和理解:
            其實,以前只在實驗室玩過的板子,那時還是已經全部弄好,不必自己弄uboot,燒系統,今天這個活的自己干,雖然以前沒玩過,不過看了開發手冊后,大概也明白了整個過程。
            大致說下自己的理解:nor flash和nand flash兩個存儲區,(他們區別網上自己找啊,很多的),nor flash是事先存放了一個uboot(沒的話可以有幾張方式燒寫的,我板子里已經有了,所以次過程跳過),所以事先進入nor flash,載入uboot后,可以控制自己的uboot跟新和nand flash燒寫,就怎么簡單,完了就可以跑裸機程序了,當然不想跑的話可以直接移植linux或裝wince,不過裝完以后,如果還想跑裸機程序的,那nand flash燒寫的系統必須重新燒寫,不過好像有個選項可以控制燒寫nand flash 程序載入位置的,不過我也沒試過,所以沒不確定。所以今天我就把裸機的幾個看了下,其中有個TQ2440_TEST的測試程序,自己按步驟操作,編譯完以后TQ2440_TEST.bin,通過usb燒寫到nand flash中執行,測試的功能有多項,鍵盤按鈕,觸摸屏==,所以推薦嘗試,其他的幾個裸機程序都是在他的基礎上修改和完善的,有興趣的可以試下。= =,不過還是推薦研究下他的源碼,花點耐心還是能看懂的。還有就是燒寫前裝下usb驅動,我win7的,正常,其他的沒怎么了,還有就是用usb傳輸的時候,串口選擇小心點,我之前因為用軟件虛擬了幾個串口,導致燒寫不進去,后來刪了就正常了。

            先說到這了。只為自己學習留下痕跡。

            posted @ 2010-08-09 21:27 小果子 閱讀(946) | 評論 (0)編輯 收藏
            好久沒動開發板了,終于把研考完了,可以安心的做自己的實驗了,但發現放下手頭關于tq2440的實驗兩個多月,發現生疏了許多,許多問題都要想一下才能記起來是什么原理,真得抓緊時間好好弄了。

            又從uboot開始弄,以前移植了uboot1.3.1,由于太多匆忙,沒有過多的注重細節,今天發現了一個以前忽略的問題,就是開發板自己判斷是從何種flash介質啟動的問題,首先說一下為什么要判斷是哪種flash介質啟動,因為這樣就沒有必要區分nor boot還是nand boot的bin文件了,bin文件燒到nor和nand都可以正常啟動開發板。

            在網上看了下別人關于nor boot或nand boot 的文章,發現Tekkaman Ninja寫的文章非常好,很值得推薦,附上地址,以便以后查找:http://blog.chinaunix.net/u1/34474/showart.php?id=2085212

            下面來分析下天嵌公司的uboot,據Tekkaman Ninja說,天嵌的uboot是從openJTAG的uboot 借鑒過來的,這個我們姑且不管他。貼下天嵌TQ2440的uboot中關于啟動判斷的代碼:

            int bBootFrmNORFlash(void)
            {
            volatile unsigned int *pdw = (volatile unsigned int *)0;
            unsigned int dwVal;

            dwVal = *pdw;
            *pdw = 0x12345678;
            if (*pdw != 0x12345678)
            {
            return 1;
            }
            else
            {
            *pdw = dwVal;
            return 0;
            }
            }

            這段代碼的思想是這樣的,無論是從NOR Flash還是從NAND Flash啟動,地址0處為指令"b Reset", 機器碼為0xEA00000B,對于從NAND Flash啟動的情況,其開始4KB的代碼會復制到CPU內部4K內存中,對于從NOR Flash啟動的情況,NOR Flash的開始地址即為0。對于NOR Flash,必須通過一定的命令序列才能寫數據,所以可以根據這點差別來分辨是從NAND Flash還是NOR Flash啟動:向地址0寫入一個數據,然后讀出來,如果沒有改變的話就是NOR Flash。

            我們在深入的分析下,首先看下nand boot 和nor boot 時物理地址分配情況:




            從NAND閃存啟動U-BOOT的設計思路

            如果s3c2440被配置成從NAND閃存啟動,上電后,s3c2440的NAND閃存控制器會自動把NAND閃存 中的前4K數據搬移到內部RAM中, 并把0x00000000設置為內部RAM的起始地址, CPU從內部RAM的0x00000000位置開始啟動。因此要把最核心的啟動程序放在NAND閃存的前4K中。

            當nor boot時,0x0000_0000是nor flash的起始地址,用語句*pdw = 0x12345678; 向0x0000_0000處寫0x12345678,是沒用的,因為對于NOR Flash,必須通過一定的命令序列才能寫數據,所以*pdw中存的數據仍然是"b Reset",但當nand flash啟動時,cpu內部的4KBbootSRAM被映射到0x0000_0000開始的地址處,norflash這時無效了,這時用語句*pdw = 0x12345678; 向0x0000_0000處寫0x12345678時,0x12345678會被寫入,因為這是對內存的操作,不需要指令序列等,所以一旦發現寫入和讀出 的數據一致時,則可判斷是nand boot,這時一定要把0x0000_0000處的數據還原,用*pdw = dwVal; 這句。

            明天看看,得重新移植uboot了,好好研究研究,uboot很高深啊!!

            http://blog.sina.com.cn/s/blog_52009a100100hcv1.html

            posted @ 2010-08-09 14:04 小果子 閱讀(1278) | 評論 (0)編輯 收藏

            一直對vim的配置目錄很confused,我發現它的配置路徑有好幾個,除了home下面的.vim,還有/usr/share/vim/vim72和/usr/share/vim,三個目錄到底哪個才是vim讀取的路徑呢?

            經過我的幾番嘗試和小小Google了一下,終于得到了結果。原來vim的“runtimepath”共有三個,就是我上面所說的,但是vim讀取這三個路徑是有順序的。

            首先讀取的目錄就是$home/.vim,如果vim讀取到了該目錄下的syntax或者plugin,就不會再去讀取usr目錄了。

            其次讀取的目錄是/usr/share/vim, 最后才讀取/usr/share/vim/vim72。

            我想vim的設計者這樣設計是有原因的,當前登錄用戶的個性化設定肯定是優先考慮的,而/usr/share/vim是給所有用戶使用的設置。所 以,對vim的設置和修改還是放在home目錄比較好,一方面不會破壞系統原有設定,可以隨時恢復,另一方面的好處我沒有完全弄明白,具體請參見這位老兄 的文章http://stackoverflow.com/questions/1384582/vim-linux-ubuntu-directory-location-vim-syntax

            其實vim的documentation已經有很詳細的描述了,在vim的command模式中輸入:help ‘runtimepath’ 可以看到詳盡的解釋。

            posted @ 2010-08-04 18:37 小果子 閱讀(8026) | 評論 (0)編輯 收藏
            ARM+LINUX路線,主攻嵌入式Linux操作系統及其上應用軟件開發

                    目標:
                    (1) 掌握主流嵌入式微處理器的結構與原理(初步定為arm9)
                    (2) 必須掌握一個嵌入式操作系統 (初步定為uclinux或linux,版本待定)
                    (3) 必須熟悉嵌入式軟件開發流程并至少做一個嵌入式軟件項目。

                    從事嵌入式軟件開發的好處是:
                    (1)目前國內外這方面的人都很稀缺。這一領域入門門檻較高,所以非專業IT人員很難切入這一領域;另一方面,是因為這一領域較新,目前發展太快,大多數人無條件接觸。
                    (2)與企業計算等應用軟件不同,嵌入式領域人才的工作強度通常低一些(但收入不低)。
                    (3)哪天若想創業,搞自已的產品,嵌入式不像應用軟件那樣容易被盜版。硬件設計一般都是請其它公司給訂做(這叫“貼牌”:OEM),都是通用的硬件,我們只管設計軟件就變成自己的產品了。
                    (4)興趣所在,這是最主要的。

                    從事嵌入式軟件開發的缺點是:
                    (1) 入門起點較高,所用到的技術往往都有一定難度,若軟硬件基礎不好,特別是操作系統級軟件功底不深,則可能不適于此行。
                    (2)這方面的企業數量要遠少于企業計算類企業。
                    (3)有少數公司經常要碩士以上的人搞嵌入式,主要是基于嵌入式的難度。但大多數公司也并無此要求,只要有經驗即可。
                    (4)平臺依托強,換平臺比較辛苦。

                    興趣的由來:
                    1、成功觀念不同,不虛度此生,就是我的成功。
                    2、喜歡思考,挑戰邏輯思維。
                    3、喜歡C
                    C是一種能發揮思維極限的語言。關于C的精神的一些方面可以被概述成短句如下:
                    相信程序員。
                    不要阻止程序員做那些需要去做的。
                    保持語言短小精干。
                    一種方法做一個操作。
                    使得它運行的夠快,盡管它并不能保證將是可移植的。
                    4、喜歡底層開發,討厭vb類開發工具(并不是說vb不好)。
                    5、發展前景好,適合創業,不想自己要死了的時候還是一個工程師。

                    方法步驟:

                    1、基礎知識:
                    目的:能看懂硬件工作原理,但重點在嵌入式軟件,特別是操作系統級軟件,那將是我的優勢。
                    科目:數字電路、計算機組成原理、嵌入式微處理器結構。
                    匯編語言、C/C++、編譯原理、離散數學。
                    數據結構和算法、操作系統、軟件工程、網絡、數據庫。
                    方法:雖科目眾多,但都是較簡單的基礎,且大部分已掌握。不一定全學,可根據需要選修。
                    主攻書籍:the c++ programming language(一直沒時間讀)、數據結構-C2。

                    2、學習linux:
                    目的:深入掌握linux系統。
                    方法:使用linux—〉linxu系統編程開發—〉驅動開發和分析linux內核。先看深,那主講原理。看幾遍后,看情景分析,對照深看,兩本交叉,深是綱,情是目。剖析則是0.11版,適合學習。最后深入代碼。
                    主攻書籍:linux內核完全剖析、unix環境高級編程、深入理解linux內核、情景分析和源代。

                    3、學習嵌入式linux:
                    目的:掌握嵌入式處理器其及系統。
                    方法:(1)嵌入式微處理器結構與應用:直接arm原理及匯編即可,不要重復x86。
                    (2)嵌入式操作系統類:ucOS/II簡單,開源,可供入門。而后深入研究uClinux。
                    (3)必須有塊開發板(arm9以上),有條件可參加培訓(進步快,能認識些朋友)。
                    主攻書籍:毛德操的《嵌入式系統》及其他arm9手冊與arm匯編指令等。

                    4、深入學習:
                    A、數字圖像壓縮技術:主要是應掌握MPEG、mp3等編解碼算法和技術。
                    B、通信協議及編程技術:TCP/IP協議、802.11,Bluetooth,GPRS、GSM、CDMA等。
                    C、網絡與信息安全技術:如加密技術,數字證書CA等。
                    D、DSP技術:Digital Signal Process,DSP處理器通過硬件實現數字信號處理算法。

                    說明:太多細節未說明,可根據實際情況調整。重點在于1、3,不必完全按照順序作。對于學習c++,理由是c++不只是一種語言,一種工具,她還是一種藝 術,一種文化,一種哲學理念、但不是拿來炫耀得東西。對于linux內核,學習編程,讀一些優秀代碼也是有必要的。

                    注意: 要學會舉一反多,有強大的基礎,很多東西簡單看看就能會。想成為合格的程序員,前提是必須熟練至少一種編程語言,并具有良好的邏輯思維。一定要理論結合實踐。
                      不要一味鉆研技術,雖然擠出時間是很難做到的,但還是要留點余地去完善其他的愛好,比如宇宙,素描、機械、管理,心理學、游戲、科幻電影。還有一些不愿意做但必須要做的!
                    技術是通過編程編程在編程編出來的。永遠不要夢想一步登天,不要做浮躁的人,不要覺得路途漫上。而是要編程編程在編程,完了在編程,在編程!等機會來了在創業(不要相信有奇跡發生,盲目創業很難成功,即便成功了發展空間也不一定很大)。

                    嵌入式書籍推薦

                    Linux基礎
                    1、《Linux與Unix Shell 編程指南》
                    C語言基礎
                    1、《C Primer Plus,5th Edition》【美】Stephen Prata著
                    2、《The C Programming Language, 2nd Edition》【美】Brian W. Kernighan David M. Rithie(K & R)著
                    3、《Advanced Programming in the UNIX Environment,2nd Edition》(APUE)
                    4、《嵌入式Linux應用程序開發詳解》
                    Linux內核
                    1、《深入理解Linux內核》(第三版)
                    2、《Linux內核源代碼情景分析》毛德操 胡希明著
                    研發方向
                    1、《UNIX Network Programming》(UNP)
                    2、《TCP/IP詳解》
                    3、《Linux內核編程》
                    4、《Linux設備驅動開發》(LDD)
                    硬件基礎
                    1、《ARM體系結構與編程》杜春雷著
                    2、S3C2410 Datasheet
                    英語基礎
                    1、《計算機與通信專業英語》
                    系統教程
                    1、《嵌入式系統――體系結構、編程與設計》
                    2、《嵌入式系統――采用公開源代碼和StrongARM/Xscale處理器》毛德操 胡希明著
                    3、《Building Embedded Linux Systems》
                    理論基礎
                    1、《算法導論》
                    2、《數據結構(C語言版)》
                    3、《計算機組織與體系結構?性能分析》
                    4、《深入理解計算機系統》【美】Randal E. Bryant David O'Hallaron著
                    5、《操作系統:精髓與設計原理》
                    6、《編譯原理》
                    7、《數據通信與計算機網絡》
                    8、《數據壓縮原理與應用》

                    C語言書籍推薦

                    1. The C programming language
                    《C程序設計語言》
                    2. Pointers on C
                    《C和指針》
                    3. C traps and pitfalls
                    《C陷阱與缺陷》
                    4. Expert C Lanuage
                    《專家C編程》
                    5. Writing Clean Code
                    -----Microsoft Techiniques for Developing Bug-free C Programs
                    《編程精粹--Microsoft 編寫優質無錯C程序秘訣》
                    6. Programming Embedded Systems in C and C++
                    《嵌入式系統編程》
                    7.《C語言嵌入式系統編程修煉》
                    8.《高質量C++/C編程指南》林銳
            posted @ 2010-08-02 10:16 小果子 閱讀(209) | 評論 (0)編輯 收藏
            僅列出標題
            共58頁: First 31 32 33 34 35 36 37 38 39 Last 
            69久久夜色精品国产69| 无码任你躁久久久久久老妇| 久久精品九九亚洲精品天堂| 精品熟女少妇av免费久久| 性高湖久久久久久久久AAAAA | 久久久国产99久久国产一| 久久精品无码专区免费青青| 国产国产成人久久精品| 日韩欧美亚洲综合久久影院Ds| 国产成人精品久久| 欧美激情精品久久久久久| 亚洲午夜久久久影院| 91亚洲国产成人久久精品| 综合久久给合久久狠狠狠97色| 欧美精品国产综合久久| 久久综合九色欧美综合狠狠| 精品乱码久久久久久久| 久久精品亚洲乱码伦伦中文| 午夜肉伦伦影院久久精品免费看国产一区二区三区 | 久久丫精品国产亚洲av不卡| 久久99精品国产99久久| 狠狠色丁香久久婷婷综合图片| 99精品国产99久久久久久97| 午夜精品久久影院蜜桃| 91精品国产高清91久久久久久| 久久亚洲精品无码aⅴ大香| 狠狠色综合网站久久久久久久| 久久亚洲AV成人无码国产 | 精品国产一区二区三区久久蜜臀| 久久久久亚洲AV片无码下载蜜桃| 久久久久亚洲AV无码永不| 色综合久久久久| 女同久久| 久久美女网站免费| 久久青青草视频| 久久99免费视频| 亚洲精品成人网久久久久久| 亚洲AV日韩AV天堂久久| 亚洲国产成人久久精品影视| 久久亚洲精品无码VA大香大香| 伊人久久大香线焦综合四虎|