• <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>
            隨筆 - 4, 文章 - 0, 評論 - 4, 引用 - 0
            數據加載中……

            2009年1月13日

            在VMWare上安裝VxWorks遇到的問題

                我找來了現成的文章,因為我是在一個廣告滿天飛的不可信任的網站上找到的,而且也沒有注明版權,我這里就很方便地直接搬上來了。
                如下:

            我也是初學者,根據wabcon2003-12-27的教程在VMWare上安裝VxWorks操作系統(原文找不到了),生成的bootrom在VMware中加載出現:
            (tBoot): sysNvRamGet:open failed
            Attached TCP/IP interface to lnPci0.停在這里不動了。
            先說明TCP/IP錯誤,主要是沒有將網絡驅動程序加入bootrom中。
            解決辦法:
            先將從AMD下載的網卡驅動中的ln97xEnd.h和ln97xEnd.c復制到pcPentium目錄中,然后修改pcPentium中的Makefile文件
            將MACH_EXTRA = 改為MACH_EXTRA = ln97xEnd.o
            然后編譯生成bootrom。此時如果后面的操作都正確,boot已經可以成功了。

            open failed錯誤不影響boot,但是有網友反應會影響到以后的開發,以后還是應該解決掉。解決的方法也很簡單,就是修改config.h文件將
            #define SYS_WARM_TYPE  SYS_WARM_FD  改為
            #define SYS_WARM_TYPE  SYS_WARM_BIOS

            Build Boo ROM的時候不支持C++語法,即//的注釋符不能被正確解析。
            環境變量的設置只是臨時的,關閉控制臺之后需要重新設置環境變量。
            mkboot a: bootrom 在a:后面有個空格。

            就這么多了,歡迎大家和我交流。Have Fun!
            ————————————————————————————————————————————————
                這個問題相信很多人會遇到,就放這里希望有人可以查到吧!還有上面(tBoot): sysNvRamGet:open failed這個問題。直接在磁盤上建立一個以“nvram.txt” 命名的txt文件就ok了。如果你想知道為什么,那就看下面的描述,國際友人寫的。
            > Hi,
            >
            > I am using VxWorks 5.5 for target machine Pentium II.  When the system
            > boots up, VxWorks gives a message as:
            >
            > 0x2a7a8c(tBoot): sysNvRamGet: open failed

            Second attempt:

            now I see what is going on.  The very first time after building the
            boot diskette, the file nvram.txt with the boot parameters, is not
            there yet.  So this system call tries to open this file and fails.
            After you supply the boot parameters by hand, they are written to this
            file, and the next time you boot after that, the error message should
            not happen.

            So, this error message should not cause any problems. 

            Mark Galecki

            posted @ 2009-01-13 06:33 掃地僧 閱讀(2144) | 評論 (2)編輯 收藏

            2009年1月5日

            迷糊的多維數組的地址

             

                    為什么要寫這個?因為這個東西有點混亂,至少我第一次接觸的時候是這樣的。或許以后還會,所以記下來需要的人一起看吧。

                    直接上主題,我做事就是很直接,當然也會很啰嗦,下面你將會一并體驗到。

            int count[2][3] = {{1,2,3},{4,5,6}};

            count //數組count[0][0]的地址。

            count+1//數組count[0][0]行數的偏移量為1的地址,即count[1][0]的地址。

            *(count+1)//等效于count+1。

            *(count+1)+1//count[0][0]行數偏移量為1,列數偏移量為1的地址,即count[1][1]的地址。

            **(count+1)//count[1][0]的值。注意這里是2個“*”。

            *(*(count+1)+1)//count[1][1]的值,這里也可以寫成**(count+1)+1,結果都是一樣的,反正就是要2個“*”。說到這里有的人可能就覺得奇怪了,上面不是說了“*(count+1)//等效于count+1”那*(*(count+1)+1)能不能寫成*((count+1)+1)呢?答案是很肯定的:不能。為什么呢?我的理解是:如果單純地表示行地址的時候有無“*”都無所謂,反正是一行的地址,同時也是一行的第一列元素的地址。*(*(count+1)+1)含義是先取得第1行的地址,然后再在第1行內偏移1列后,取得地址所存儲的值4。如果寫成*((count+1)+1)則含義變成:行數偏移1后再偏移1后的地址。
                   這里有點饒頭,多看幾次就會明白了。當然按照我的理解來看也是有一定風險的,因為我可能理解錯了。不過這些結果我都試驗過的,絕對不會錯的。

            *(count+1)[1]//count[1][1]的值。首先用*(count+1)取得行地址,然后用[1]直接獲取這個地址中第1號元素的值。這個表達式等效于*(count[1]+1),同時也等效于*(*(count+1)+1)。~~撲通~~已經有人徹底暈倒了。這里的“*(count+1)”,“count[1]”都是為了有效地進行行地址定位,因為只有先找到行地址才能進列定位嘛!

            最后總結:

            1.    如果你是想獲得多維數組中一行的地址則使用不使用“*”都無所謂。前提是沒有“[]”出現。

            2.    如果你是想獲得多維數組中元素的地址則首先得確定好此元素的行地址(使用“*”,比如*(count+1)這樣就確定了是第1行的地址),然后再進行列偏移。

            3.    如果你是想獲得多維數組中元素的值,則可以在地址之前加“*”一般整個表達式是2個“*”,因為確定某一行的時候的那個“*”是必不可少的。當然也可以使用帶有“[]”的方式,這個方式里面需一個“*”和一個“[]”就可以獲得數組的值。如果你說使用count[1][1]這樣的方式不是更好么?你說的一點都沒錯,不過我這里主要討論的是與地址相關的內容。不過要順帶說一下如果使用雙“[]”的情況下表達式前加不加“*”都是無所謂的。

            再一次總結:

            1. 多維數組的地址中,重點就是進行行地址定位,有2種方式,第一種:加“*”eg:*(count+1)。第二種:使用“[]”eg:count[1]。
                   這里有一個問題啊,* count[1]是地址還是值啊?如果你的回答是地址那請再回頭看一下最后總結第一條。這里的* count[1]表示的是一個值,因為這條語句的含義是取count[1]的值,可是count[1]只是一個地址,只進行了行定位,偏要它交出一個值出來,只好把列排名第一的第0個元素丟了出來,即count[1][0]。

            學生朋友應付考試的總結:
            1. 單個“*”或單個“[]”可以獲得地址;雙“*”或雙“[]”或一個“*”加上一個“[]”可以獲得數組值。這樣的規律是不是很簡潔明了?

             錯誤不足之處還請大家多多指正!謝謝!

            posted @ 2009-01-05 02:25 掃地僧 閱讀(470) | 評論 (3)編輯 收藏

            2008年12月31日

            指針 第一印象

            1.指針怎樣聲明?

              使用* 比如int* a;

            2.指針中存放的是什么呢?

              指針中存放的是地址。比如 int* a = NLL; int b = 0; a = &b;

              例子中把b的地址給了int型指針a。&符號是用來獲得任何變量地址的,這里變量b的地址就是&b。

              那b的地址的值是多少呢?這個是內存中分配的,每次都可能不一樣。

              這里還需要注意的是變量的類型必須和指針的類型一致才可以把變量的地址放入指針中去。

            3.指針中的地址的值如何獲取?

              同樣是*這個符號,比如我們要獲取指針a的值,直接*a就可以了。

              比如*a+1 結果為1。如果寫成a+1就是不正確的了,得出的結果就是a中的內存地址加上1后的那塊內存地址了。

              但是特別的是,如果你定義成 char *string = “Hello world!”;直接string獲得的值并不是地址而是“Hello world!”。

              為什么呢?因為輸出操作把char*當成char數組來對待。

            4.什么是指針數組?

              說白了講就是數組的中存放的是指針。

              比如char  *strChar[] = {“123”,”1234”,”12345”}; 則strChar[0]中存放的是”123”地址的值,以此類推。

              但是這里雖然存放的是地址的值,但是可以直接用strChar[0]取得”123”。

            posted @ 2008-12-31 15:25 掃地僧 閱讀(259) | 評論 (0)編輯 收藏

            2008年12月18日

            Platform Builder NLS data compression utility 已經停止工作(問題解決)

                  現象:vs2005下新建了一個OSdesign工程,在屬性頁中的[Locale]:Locales中同時選中了中文(繁體,臺灣)和中文(簡體,中國),Default locale:中文(簡體,中國)。結果編譯到最后的時候出現:Platform Builder NLS data compression utility 已經停止工作的錯誤。
                 解決方法:去掉了中文(繁體,臺灣)的選項。
                 原因:編碼問題。(參考:http://support.microsoft.com/kb/232901/ja (日語))

            posted @ 2008-12-18 21:06 掃地僧 閱讀(410) | 評論 (0)編輯 收藏

            久久狠狠高潮亚洲精品| 亚洲国产美女精品久久久久∴| 99久久99这里只有免费费精品| 久久国产精品久久久| 曰曰摸天天摸人人看久久久| 欧美精品丝袜久久久中文字幕 | 久久精品这里只有精99品| 色欲综合久久躁天天躁| 久久精品国产亚洲AV无码偷窥| 色噜噜狠狠先锋影音久久| 日韩欧美亚洲综合久久 | 无码AV波多野结衣久久| 婷婷综合久久狠狠色99h| 日韩欧美亚洲综合久久| 狠狠色伊人久久精品综合网| 久久久国产乱子伦精品作者| 久久久久人妻精品一区三寸蜜桃| 久久综合88熟人妻| 2021国产精品久久精品| 香蕉99久久国产综合精品宅男自| 久久精品国产精品国产精品污| 亚洲午夜无码久久久久| 亚洲国产成人久久笫一页| 久久精品国产精品亚洲精品| 久久久久久亚洲精品成人| 久久综合鬼色88久久精品综合自在自线噜噜| 人人狠狠综合久久亚洲88| 国产精品美女久久久久| 久久久久人妻精品一区二区三区| 久久精品青青草原伊人| 久久亚洲AV成人无码| 久久综合鬼色88久久精品综合自在自线噜噜 | 久久精品国产亚洲av瑜伽| 色综合久久中文色婷婷| 一级做a爰片久久毛片16| 久久精品www| 久久精品国产亚洲Aⅴ香蕉| 久久精品中文字幕有码| 亚洲人成无码网站久久99热国产| 欧美亚洲日本久久精品| 91麻豆国产精品91久久久|