




已閱讀5頁,還剩1頁未讀, 繼續(xù)免費閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1.(a) 在流水線處理器中,什么是冒險(hazard)?在什么情況下出現(xiàn)冒險?對于冒險一般如何處理?(b) 什么是 CISC?什么是 RISC?它們各自有什么特點和區(qū)別?(c)什么是虛擬地址?虛擬地址有什么作用?(d)解釋下列名詞:大端(big endian)、小端(little endian)、主機序、網(wǎng)絡(luò)序(a) 流水線沖突:在流水線系統(tǒng)中,由于相關(guān)的存在,使得指令不能在指定的周期內(nèi)完成。流水線沖突包括結(jié)構(gòu)沖突、數(shù)據(jù)沖突和控制沖突三種。1) 結(jié)構(gòu)沖突:因為硬件資源滿足不了指令重疊執(zhí)行要求而產(chǎn)生的沖突。解決方法:設(shè)置獨立的數(shù)據(jù)、指令cache;阻塞后面指令運行2) 數(shù)據(jù)沖突:一條指令依賴于前面指令的運行結(jié)果而產(chǎn)生的沖突。解決方法:定向、流水線互鎖和編譯器指令調(diào)度3) 控制沖突:流水線遇到跳轉(zhuǎn)指令或者其它更改pc值的指令。解決方法:預(yù)測指令運行、延遲跳轉(zhuǎn)、盡快計算跳轉(zhuǎn)目標(biāo)地址。(b)CISC 是“復(fù)雜指令集”的簡稱,復(fù)雜指令集指令數(shù)量很多,部分指令的延遲很長,編 碼是可變長度的。RISC 是“精簡指令集”的簡稱,精簡指令集指令數(shù)量少得多,沒有較長延遲 的指令,編碼是固定長度的。(c)虛擬地址是操作系統(tǒng)提供的對主存的抽象,它為每個進程提供了一個大的、一致的 和私有的地址空間。它的作用是 1)它將主存看成一個存儲在磁盤上的地址空間的高速緩存, 在主存中只保存活動區(qū)域,并根據(jù)需要在主存和磁盤之間來回傳送數(shù)據(jù),通過這種方式,它 高效的利用了主存 2)它為每個進程提供了一致的地址空間,從而簡化了存儲器管理 3)它 保護了每個進程的地址空間不被其它進程破壞。(d) 最低有效字節(jié)在最前面的方式,稱為小端法,最低有效字節(jié)在最后面的方式,稱為大 端法。主機序是指機器 CPU 采用的字節(jié)表示方法。網(wǎng)絡(luò)序是 TCP/IP 中規(guī)定的數(shù)據(jù)表示格式,與 CPU 類型和操作系統(tǒng)無關(guān),網(wǎng)絡(luò)序采用大端排列。2.有如下假設(shè):(1) 存儲器是字節(jié)尋址的;(2) 存儲器訪問的是 1 字節(jié)的字(不是 4 字節(jié)的字);(3) 地址寬度為 13 位;(4) 高速緩存是 2 路組相聯(lián)的(E=2),塊大小為 4 字節(jié)(B=4),有 8 個組(S=8); 高速緩存的內(nèi)容如下,所有數(shù)字都是以十六進制來表示的:(a)下面的放開展示的是地址格式(每個小方框一個位)。指出(在圖中標(biāo)出)用來確定下列內(nèi)容的字段:(1) CO 高速緩存塊偏移(2) CI 高速緩存組索引(3) CT 高速緩存標(biāo)記(b)假設(shè)一個程序運行在上述機器上,它引用 0xE34 處的 1 個字節(jié)的字。指出訪問的 高速緩存條目和十六進制表示的返回的高速緩存字節(jié)值。指出是否會發(fā)生緩存不命中, 如果出現(xiàn)緩存不命中,用“-”來表示“返回的高速緩存字節(jié)”。(a) 由于塊大小是 4(22),那么需要兩位來表示塊內(nèi)偏移;由于緩存一共有 8(23)組,那么 需要 3 位來表示組索引;由于地址一共 13 位,那么標(biāo)記位為 8(13 2 - 3)位;按照 高速緩存地址劃分的規(guī)則(從高位到低位依次是標(biāo)記,組索引,塊內(nèi)偏移),13 位地 址可標(biāo)記為:(b) 地址 0xE34 的二進制表示為:0b111000110100;根據(jù)上面的討論,末兩位為塊內(nèi)偏 移 0b00(0x0) , 末 兩位 之前 三位 為 組 索引 0b101(0x5) , 末 五 位 之前 是 標(biāo)記 0b1110001(0x71);通過查表可以找到組號為 5,標(biāo)記為 0x71 的位置,該位置有效位 為 1,讀取第一個字節(jié)得到數(shù)據(jù) 0xB。3.(a) 確定下面的 malloc 請求序列得到的塊大小和頭部值。假設(shè):(1) 分配器維持雙字對齊,使用隱式空閑鏈表,格式如下圖所示。(2) 塊大小向上攝入為最接近的 8 字節(jié)的倍數(shù)。(b) 確定下面每種對齊要求和塊格式的組合的最小塊大小。假設(shè):隱式空閑鏈表,不允許有效載荷為零,頭部和腳部放在 4 字節(jié)的字中。(a) 塊大小包括塊頭部大?。ㄈ绻麎K有尾部的話,那么也包含尾部大小),當(dāng)請求 3 字節(jié)大小的塊時,需要 3+4=7 字節(jié)的內(nèi)容,而根據(jù)條件的 8 字節(jié)倍數(shù)要求,塊 的大小確定為 8 字節(jié)(最后一字節(jié)雖然沒有申請,但也分配了);根據(jù)圖片顯示 的塊結(jié)構(gòu),塊頭部值的最后三位為元數(shù)據(jù),元數(shù)據(jù)頭兩位始終為 0,最后一位為1 表示已占用的塊;塊頭部值可計算為塊大小加上塊元數(shù)據(jù)值,即 0x8+0b001, 即頭部值為 9。根據(jù)上面的方法,malloc(11)需要分配 16 字節(jié)的塊,頭部值為 17(0x11);malloc(20) 需要分配 24 字節(jié)的塊,頭部值為 25(0x19);malloc(21)需要分配 32 字節(jié)的塊, 頭部值為 33(0x21)(c) 第一項,塊對齊單字,已分配和空閑塊都有頭部和尾部,那么頭部和尾部數(shù)據(jù)需要8 字節(jié);而有效載荷不允許為 0,那么大于 8 且能被 4 整除的最小正整數(shù)為 12,因 此最小塊大小為 12。第二項,塊對齊單字,已分配塊可以省略腳部,那么僅考慮已分配塊,頭部數(shù)據(jù)需 要 4 個字節(jié);有小載荷不允許為 0,那么大于 4 且能被 4 整除的最小正整數(shù)為 8, 因此最小塊大小為 8。第三項,大于 8 且能被 8 整除的最小整數(shù)為 16。 第四項,大于 4 且能被 8 整除的最小整數(shù)為 8。4.(a) 下面是一個并行求和算法,將其補充完整。#include #include #include #define MAXTHREADS 32/* Global shared variables */ long psumMAXTHREADS; long nelems_per_thread;void *sum(void *vargp)/* Extract the thread id */int myid = *(int *)vargp);/* Start element index */long start = myid * nelems_per_thread;/* End element index */long end = start + nelems_per_thread;long i, sum = 0;for (i = start; i end; i+) sum += i;psummyid = sum;return NULL;int main(int argc, char *argv)long i, nelems, log_nelems, nthreads, result = 0;pthread_t tidMAXTHREADS;int myidMAXTHREADS;/* Get input arguments */if (argc != 3) printf(Usage:%s n, argv0);exit(0);nthreads = atoi(argv1); log_nelems = atoi(argv2); nelems = (1L log_nelems);nelems_per_thread = nelems / nthreads;/* Create peer threads and wait for them to finish */for (i = 0; i nthreads; i+) myidi = i; (1) ;for (i = 0; i nthreads; i+) (2) ;/* Add up the partial sums computed by each thread */for (i = 0; i nthreads; i+) (3) ;/* Check final answer */if (result != (nelems *(nelems - 1)/2) printf(Error: result=%ldn, result);exit(0);(b) 思考下面的程序,它視圖使用一對信號量來實現(xiàn)互斥。初始時: s = 1, t = 0線程 1:P(s)V(s)P(t)V(t)線程 2:P(s)V(s)P(t)*(t) (1) 畫出這個程序的進度圖。(2) 它總是死鎖嗎?請分析原因(3) 如果是,那么對初始信號量的值做那些改變就能消除潛在的死鎖呢?(4) 畫出得到的無死鎖程序的進度條。(a) (1
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年企業(yè)戰(zhàn)略變革試題及答案
- 偽隨機數(shù)生成考試考題及答案
- 抖音雙十一活動策劃方案
- 2025年云計算應(yīng)用考試試題及答案
- 計算機技術(shù)員考試試題及答案概述
- 項目合同協(xié)議書
- 新疆出入境邊防檢查總站所屬事業(yè)單位2025年度公開招聘筆試和合格分數(shù)線筆試歷年典型考題及考點剖析附帶答案詳解
- 公共關(guān)系技巧的訓(xùn)練計劃
- 行政法學(xué)的評估標(biāo)準(zhǔn)及試題及答案
- 網(wǎng)絡(luò)問題識別與試題及答案
- 林下經(jīng)濟產(chǎn)業(yè)項目可行性研究報告
- 《深入了解中信建投》課件
- 2025年全民營養(yǎng)周科學(xué)實現(xiàn)吃動平衡健康中國營養(yǎng)先行課件
- 鍵盤采購合同協(xié)議
- 銀泰證券公司融資融券業(yè)務(wù)方案設(shè)計
- 2025年高校教師崗前培訓(xùn)《高等教育學(xué)》考試模擬試卷及答案(共五套)
- 湖南省張家界市慈利縣實驗高中-奮進關(guān)鍵期跨越分水嶺-高二下開學(xué)家長會【課件】
- 2025年湖北省建設(shè)投資集團有限公司招聘筆試參考題庫含答案解析
- 2025年中國證券融資融券行業(yè)市場調(diào)查研究及投資前景預(yù)測報告
- 魚躍前滾翻單元計劃-2024-2025學(xué)年人教版體育與健康六年級上冊
- DB32∕T 525-2010 學(xué)生公寓用紡織品
評論
0/150
提交評論