• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 新聞中心

    EEPW首頁 > 嵌入式系統 > 設計應用 > 技術白皮書:多核系統編程技術

    技術白皮書:多核系統編程技術

    作者: 時間:2009-04-13 來源:網絡 收藏



    圖2:典型的應用程序,它展示了編程所具有的與生俱來的并行特性。

    基于文本的如C語言等,在代碼中利用特殊標記來表示并行化代碼,創建并行任務(也就是創建獨立的線程)。管理這些多線程的應用程序將是一個挑戰。

    在C語言中,用戶必須使用鎖操作、互斥量、原子操作和其他高級編程技術來管理同步。當多線程變得難于跟蹤調試,通常的編程缺陷便出現了,如下所示:
    1. 由于線程太多而導致效率低下。
    2. 死鎖——線程一直在等待某些而不能進行處理。
    3. 競爭狀況- 代碼運行的時序沒有被正確管理,在需要數據時,數據不是沒有準備好就是已經被覆蓋掉了。
    4. 存儲器沖突——與代碼中存儲器管理相關的問題。

    由于使用C語言進行開發面臨的這些挑戰,程序員們可以獲得比以往更高的效率。

    是利用實時SMP支持,處于“Multicore Ready”軟件層的最上層Intel公司定義了用戶需要評估的四個軟件層次來確定多核系統的可用程度。如果所用的應用程序庫和設備驅動不是為多核而設計的,或者操作系統不能夠在多個核心上進行負載均衡,那么并行程序在多核心系統上并不會運行得更快。


    上一頁 1 2 3 下一頁

    評論


    相關推薦

    技術專區

    關閉
    主站蜘蛛池模板: 白河县| 科尔| 桐乡市| 荔波县| 新丰县| 鸡东县| 甘洛县| 洪洞县| 丹阳市| 诏安县| 上高县| 河南省| 邵阳市| 启东市| 怀安县| 宁南县| 吕梁市| 桑植县| 普洱| 宁阳县| 柏乡县| 柘荣县| 桂东县| 谢通门县| 秀山| 乾安县| 伊金霍洛旗| 广南县| 阿克苏市| 葵青区| 安达市| 海城市| 和静县| 广安市| 电白县| 吴桥县| 普格县| 潞城市| 武穴市| 麻阳| 汪清县|