两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

多核處理器系統(tǒng)、中斷程序、以及中斷方法

文檔序號:8472843閱讀:843來源:國知局
多核處理器系統(tǒng)、中斷程序、以及中斷方法
【專利說明】多核處理器系統(tǒng)、中斷程序、以及中斷方法
[0001]本分案申請是申請?zhí)枮?01080063240.6、申請日為2010年2月23日的發(fā)明專利申請的分案申請,該發(fā)明專利申請的發(fā)明名稱為“多核處理器系統(tǒng)、中斷程序、以及中斷方法”。
技術(shù)領(lǐng)域
[0002]本發(fā)明涉及控制線程的中斷的多核處理器系統(tǒng)、中斷程序、以及中斷方法。
【背景技術(shù)】
[0003]以往公開了多核處理器系統(tǒng)。例如有如下的多核處理器系統(tǒng):在從CPU (CentralProcessing Unit,中央處理器)中不使OS (Operating System,操作系統(tǒng))的內(nèi)核動(dòng)作,而是針對來自主CPU的起動(dòng)請求對從屬庫(slave library)進(jìn)行線程起動(dòng)(例如,參考下述專利文獻(xiàn)I?4。)。該情況下,在從CPU中,內(nèi)核不進(jìn)行動(dòng)作,僅具有必要最低限度的線程執(zhí)行程序和來自主CPU的中斷控制功能,從而使基于OS的內(nèi)核的開銷為最小限度。
[0004]例如,在由主CPU執(zhí)行的庫線程存在針對從CPU調(diào)用從屬庫線程的情況下,能夠?qū)崿F(xiàn)主CPU和從CPU并行執(zhí)行。
[0005]在先技術(shù)文獻(xiàn)
[0006]專利文獻(xiàn)
[0007]專利文獻(xiàn)1:日本專利文獻(xiàn)特開2005-25726號公報(bào);
[0008]專利文獻(xiàn)2:日本專利文獻(xiàn)特開平6-243102號公報(bào);
[0009]專利文獻(xiàn)3:日本專利文獻(xiàn)特開平6-149752號公報(bào);
[0010]專利文獻(xiàn)4:日本專利文獻(xiàn)特開2006-185348號公報(bào)。

【發(fā)明內(nèi)容】

[0011]發(fā)明所要解決的問題
[0012]但是,在上述的現(xiàn)有技術(shù)中,從CPU如果有來自主CPU的調(diào)用則執(zhí)行線程,在沒有調(diào)用的情況下,繼續(xù)中止?fàn)顟B(tài)。主CPU和從CPU總是并行執(zhí)行的情況少,通常從CPU在具有來自主CPU的調(diào)用之前處于中止?fàn)顟B(tài)。
[0013]如此,根據(jù)動(dòng)作的軟件的可并行執(zhí)行的比率來決定系統(tǒng)的使用效率(阿姆達(dá)爾法則),但隨著處理器數(shù)增加、或者隨著軟件具有的可并行執(zhí)行的比率下降,存在使用效率嚴(yán)重惡化、性能劣化的問題。
[0014]另一方面,當(dāng)使多處理器的各CPU運(yùn)行OS時(shí),通過各CPU執(zhí)行應(yīng)用,但是需要針對同時(shí)執(zhí)行的應(yīng)用實(shí)施排他控制等。如此,能夠通過OS的內(nèi)核進(jìn)行細(xì)致的控制,但是存在由該管理機(jī)構(gòu)產(chǎn)生開銷的問題。特別是在如便攜終端那樣的嵌入式系統(tǒng)中,存在由管理機(jī)構(gòu)產(chǎn)生的開銷成為無法忽視的負(fù)載的問題。
[0015]本發(fā)明的目的在于提供能夠?qū)崿F(xiàn)低負(fù)載并且提高處理器的使用效率的多核處理器系統(tǒng)、中斷程序、以及中斷方法,以解決上述現(xiàn)有技術(shù)中的問題。
[0016]用于解決問題的手段
[0017]為了解決上述問題、實(shí)現(xiàn)目的,本多核處理器系統(tǒng)、中斷程序、以及中斷方法的要件在于,在具有執(zhí)行OS以及多個(gè)應(yīng)用的一個(gè)核以及被分配所述多個(gè)應(yīng)用的線程的其他核的多核處理器系統(tǒng)中,從所述一個(gè)核接收指定在所述多個(gè)應(yīng)用中的一個(gè)應(yīng)用中發(fā)生的事件的中斷信號,判斷由被接收的中斷信號指定的事件是否是在所述其他核中對當(dāng)前執(zhí)行中的線程的排他或者同步的開始事件,在被判斷為是所述開始事件的情況下,使所述當(dāng)前執(zhí)行中的線程從所述其他核避讓,將所述多個(gè)應(yīng)用的執(zhí)行等待線程組中被避讓的線程以外的其他線程分配作為所述其他核的執(zhí)行對象線程。
[0018]發(fā)明的效果
[0019]根據(jù)本發(fā)明的多核處理器系統(tǒng)、中斷程序、以及中斷方法,能夠起到實(shí)現(xiàn)低負(fù)載并且提高處理器的使用效率的效果。
【附圖說明】
[0020]圖1是示出本實(shí)施方式涉及的多核處理器系統(tǒng)的硬件構(gòu)成的框圖;
[0021]圖2是示出在本實(shí)施方式涉及的多核處理器系統(tǒng)中的執(zhí)行處理步驟的流程圖;
[0022]圖3是示出中斷控制的具體例I的順序圖;
[0023]圖4是示出中斷控制的具體例2的順序圖;
[0024]圖5是示出中斷控制的具體例3的順序圖;
[0025]圖6是示出中斷控制的具體例4的順序圖。
【具體實(shí)施方式】
[0026]以下參考附圖對本發(fā)明涉及的多核處理器系統(tǒng)、中斷程序、以及中斷方法的實(shí)施方式進(jìn)行詳細(xì)地說明。此外,在本實(shí)施方式的多核處理器系統(tǒng)中,所謂的多核處理器是搭載多個(gè)核的處理器。只要搭載多個(gè)核即可,可以是搭載了多個(gè)核的單一處理器,也可以是排列單核處理器的處理器組。此外,在本實(shí)施方式中,為了簡化說明,以排列單核處理器的處理器組為例來進(jìn)行說明。
[0027](多核處理器系統(tǒng)的硬件構(gòu)成)
[0028]圖1是示出本實(shí)施方式涉及的多核處理器系統(tǒng)的硬件構(gòu)成的框圖。在圖1中,多核處理器系統(tǒng)100被構(gòu)成為主CPU 101、一個(gè)或多個(gè)從CPU 102 (在圖1中為I個(gè))、以及存儲(chǔ)器103經(jīng)由總線104連接。在主CPU 101和從CPU 102中內(nèi)置有高速緩存。
[0029]在主CPU 101中,運(yùn)行控制存儲(chǔ)器管理和從CPU 102的OS 110。OS 110僅在主CPU 101中運(yùn)行。另外,在主CPU 101中,與OS 110對應(yīng)的多個(gè)應(yīng)用通過OS 110的調(diào)度而以時(shí)間片進(jìn)行動(dòng)作。在應(yīng)用A中包含在其動(dòng)作中起動(dòng)的線程B,在應(yīng)用X中包含在其動(dòng)作中起動(dòng)的線程Y。
[0030]從CPU 102執(zhí)行中斷程序120。另外,在主CPU 101中被執(zhí)行的應(yīng)用的線程也被從CPU 102執(zhí)行。在從CPU 102中,由于OS 110不運(yùn)行,因此僅一個(gè)獨(dú)立動(dòng)作。
[0031]存儲(chǔ)器103存儲(chǔ)OS 110和應(yīng)用、以及其他各種信息,并被用作主CPU 101以及從CPU 102的工作區(qū)。存儲(chǔ)器103具體地例如是ROM (Read Only Memory,只讀存儲(chǔ)器)、RAM (Random Access Memory,隨機(jī)存取存儲(chǔ)器)、閃存器、硬盤驅(qū)動(dòng)器等存儲(chǔ)裝置。
[0032]在圖1中,主CPU 101中在OS 110上進(jìn)行動(dòng)作的應(yīng)用A、X以時(shí)間片進(jìn)行動(dòng)作,從CPU 102中應(yīng)用A的線程B獨(dú)立地進(jìn)行動(dòng)作。此外,應(yīng)用X的線程Y在主CPU 101的線程隊(duì)列中等待。
[0033]在本實(shí)施方式中,在排他或者同步的事件發(fā)生的情況下,可有效地運(yùn)用從CPU102。這里,對同步的例子進(jìn)行說明。例如,假設(shè)應(yīng)用A具有進(jìn)行文件讀入并在存儲(chǔ)器103上展開的功能,同時(shí)執(zhí)行中的線程B利用在存儲(chǔ)器103上展開的文件的數(shù)據(jù)。此時(shí),線程B在由應(yīng)用A完成文件讀出以及存儲(chǔ)器展開結(jié)束之前進(jìn)行等待。即,數(shù)據(jù)被展開的存儲(chǔ)器區(qū)域與文件讀出同時(shí)通過應(yīng)用A被置于排他監(jiān)視下,暫時(shí)從從CPU 102釋放線程B。之后,在存儲(chǔ)器展開后與線程B共用(同步)數(shù)據(jù)。
[0034]另外,對排他的例子進(jìn)行說明。例如,假設(shè)應(yīng)用A為瀏覽器、線程B為在瀏覽器內(nèi)動(dòng)作的動(dòng)畫再生程序。另外,假設(shè)應(yīng)用X為郵件程序、線程Y為郵件的查詢程序。
[0035]在主CPU 101中,假設(shè)應(yīng)用A(瀏覽器)和應(yīng)用X(郵件程序)分時(shí)進(jìn)行動(dòng)作。在線程B(動(dòng)畫再生程序)再生來自動(dòng)畫分發(fā)服務(wù)器的動(dòng)畫中,線程Y(郵件的查詢程序)的起動(dòng)定時(shí)到來了的情況下,OS 110使從CPU 102執(zhí)行線程Y(郵件的查詢程序),因此對線程B(動(dòng)畫再生程序)進(jìn)行排他控制。由此,從從CPU 102釋放線程B(動(dòng)畫再生程序),并在從CPU 102中執(zhí)行線程Y (郵件的查詢程序)。
[0036](多核處理器系統(tǒng)100中的中斷處理步驟)
[0037]圖2是示出在本實(shí)施方式涉及的多核處理器系統(tǒng)100中的執(zhí)行處理步驟的流程圖。在圖2中,主CPU 101的處理步驟示出OS 110的管理處理步驟,從CPU 102的處理步驟示出來自主CPU 101的線程的中斷控制處理步驟。
[0038]首先,對在主CPU 101中的OS 110的管理處理步驟進(jìn)行說明。OS 110并行起動(dòng)主進(jìn)程(步驟S201)。具體地,例如,使作為主進(jìn)程的應(yīng)用Α、Χ以時(shí)間片進(jìn)行動(dòng)作。
[0039]另外,當(dāng)執(zhí)行被起動(dòng)的主進(jìn)程時(shí),主CPU 101通過OS 110根據(jù)主進(jìn)程的執(zhí)行狀況將主進(jìn)程的線程設(shè)定在線程隊(duì)列200 (步驟S202)。具體地,例如設(shè)定線程B、Y。線程隊(duì)列200的狀態(tài)例如被寫入到存儲(chǔ)器103,能夠被從CPU 102參照。
[0040]并且,主CPU 101通過OS 110檢測出事件的發(fā)生(步驟S203)。這里,所謂事件包括線程的起動(dòng)或停止、中斷、排他、同步、信號消息等。事件通過在OS 110上執(zhí)行的應(yīng)用或在從CPU 102中執(zhí)行的線程發(fā)生。
[0041]當(dāng)OS 110檢測出事件的發(fā)生時(shí),判斷該事件的種類(步驟S204)。在事件是與排他或者同步有關(guān)的事件的情況下(步驟S204:排他、同步),主CPU 101通過OS 110在中斷信號的高位比特上施加表示排他或者同步的標(biāo)識符(步驟S205),并轉(zhuǎn)移到步驟S206。
[0042]另一方面,在步驟S204中,在事件種類是排他、同步以外的事件的情況下(步驟S204:其他),轉(zhuǎn)移到步驟S206。在步驟S206中,主CPU 101通過OS 110將與在步驟S204中判斷出的事件對應(yīng)的中斷信號通知給從CPU 102(步驟S206)。如此,主CPU 101通過OS110當(dāng)在主進(jìn)程中事件發(fā)生時(shí)將中斷信號通知給從CPU 102,并向線程隊(duì)列200投入必要的線程,成為執(zhí)行等待線程。
[0043]另外,從CPU 102通過中斷程序120等待線程的起動(dòng)(步驟S210),當(dāng)線程被起動(dòng)時(shí),從CPU 102通過中斷程序120執(zhí)行線程(步驟S211)。該線程動(dòng)作在接收中斷信號之前被進(jìn)行。另外,當(dāng)在接收中斷信號前線程結(jié)束了的情況下,轉(zhuǎn)移到步驟S216。
[0044]另外,當(dāng)從CPU 102從主CPU 101接收中斷信號的通知時(shí),從CPU 102通過中斷程序120執(zhí)行中斷接收處理(步驟S212)。并且,從CPU 102通過中斷程序120判斷由中斷信號指定的事件的種類(步驟S213)。在事件是與排他或者同步有關(guān)的事件以外的其他事件的情況下(步驟S213:其他),從CPU 10
當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會(huì)獲得點(diǎn)贊!
1
安丘市| 耒阳市| 江陵县| 武宣县| 平阴县| 永顺县| 株洲县| 昌图县| 图木舒克市| 鄂托克旗| 金塔县| 永新县| 东辽县| 新竹县| 岳阳县| 万盛区| 桦南县| 漾濞| 阜阳市| 德清县| 乃东县| 安远县| 张北县| 义马市| 南京市| 淅川县| 塔城市| 买车| 民勤县| 藁城市| 台北县| 常州市| 富锦市| 漳平市| 白朗县| 抚顺县| 咸丰县| 喀喇| 芦溪县| 中山市| 绵竹市|