TWI592803B - 嵌入式系統之操作方法與控制晶片 - Google Patents
嵌入式系統之操作方法與控制晶片 Download PDFInfo
- Publication number
- TWI592803B TWI592803B TW105107687A TW105107687A TWI592803B TW I592803 B TWI592803 B TW I592803B TW 105107687 A TW105107687 A TW 105107687A TW 105107687 A TW105107687 A TW 105107687A TW I592803 B TWI592803 B TW I592803B
- Authority
- TW
- Taiwan
- Prior art keywords
- driver
- core
- user
- mode
- user mode
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4411—Configuring for operating with peripheral devices; Loading of device drivers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/10—Program control for peripheral devices
- G06F13/102—Program control for peripheral devices where the programme performs an interfacing function, e.g. device driver
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/545—Interprogram communication where tasks reside in different layers, e.g. user- and kernel-space
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Stored Programmes (AREA)
Description
本發明是關於嵌入式系統,尤其是關於嵌入式系統的控制晶片及其執行驅動程式的操作方法。
現今的嵌入式系統因為提供較多功能,所以通常會藉由作業系統來協助管理系統資源,而嵌入式系統的驅動程式可以執行於作業系統的使用者模式(user mode)或是核心模式(kernel mode)。執行於使用者模式的驅動程式具有以下優點:(1)當使用者模式的驅動程式運作不正常時,不會導致核心崩潰(crash);(2)因為不需要於保護模式與非保護模式之間作切換,所以應用程式(application)呼叫使用者模式驅動程式時的反應速度較快。另一方面,執行於核心模式的驅動程式具有以下優點:(1)對於作業系統的多工處理的支援比較完整;(2)對於作業系統進行休眠時的支援比較完整。然而,傳統上,一個驅動程式要執行於使用者模式執行或是核心模式,在驅動程式的編譯期間(compile time)就必須決定,無法在系統的執行期間(runtime)才決定,限制了驅動程式在使用上的彈性。
鑑於先前技術之不足,本發明之一目的在於提供一種嵌入式系統之操作方法與控制晶片,以提升嵌入式系統執行驅動程式時的彈性。
本發明揭露一種操作一嵌入式系統之方法,該嵌入式系統包含一目標硬體,該嵌入式系統之一作業系統具有一使用者模式及一核心模式,該方法包含:提供一使用者模式驅動程式,該使用者模式驅動程式執行於該使用者模式,用來控制該目標硬體;提供一核心模式驅動程式,該核心模式驅動程式執行於該核心模式,用來控制該目標硬體;以及依據一指示代碼決定使用該使用者模式驅動程式或該核心模式驅動程式來控制該目標硬體。
本發明另揭露一種嵌入式系統之控制晶片,該控制晶片用來控制該嵌入式系統之一目標硬體,該控制晶片包含:一處理單元,用來執行一作業系統以實現該嵌入式系統之功能,該作業系統具有一使用者模式及一核心模式;以及一記憶體,耦接該處理單元,用來儲存該嵌入式系統之系統程式,包含:一使用者模式驅動程式,執行於該使用者模式,用來控制該目標硬體;一核心模式驅動程式,執行於該核心模式,用來控制該目標硬體;以及一判斷模組。該處理單元係執行該判斷模組來依據該目標硬體所對應之一指示代碼決定使用該使用者模式驅動程式或該核心模式驅動程式以控制該目標硬體。
本發明之嵌入式系統之操作方法與控制晶片能夠令嵌入式系統在執行期間才決定要執行使用者模式驅動程式或核心模式驅動程式。相較於習知技術,本發明無需預先決定驅動程式將執行於使用者模式或核心模式,提高了嵌入系式統執行驅動程式的彈性。
有關本發明的特徵、實作與功效,茲配合圖式作實施例詳細說明如下。
本發明之揭露內容包含嵌入式系統之操作方法與控制晶片,在實施為可能的前提下,本技術領域具有通常知識者能夠依本說明書之揭露內容來選擇等效之元件或步驟來實現本發明,亦即本發明之實施並不限於後敘之實施例。
圖1為一個嵌入式系統的局部功能方塊圖。嵌入式系統10例如是電視、手持電子裝置(例如手機、平板電腦)或是其他消費性電子裝置等系統,包含控制晶片100、快閃記憶體200以及顯示單元300。快閃記憶體200儲存控制晶片100執行嵌入式系統10的功能時所需的系統程式,控制晶片100的處理單元110透過快閃記憶體控制器120從快閃記憶體200讀取系統程式並載入記憶體140中。系統程式包含應用程式142、作業系統146、作業系統功能模組148以及供應用程式142使用的程式庫144。處理單元110執行作業系統146使嵌入式系統10具有系統排程、檔案系統、或甚至多工處理等能力,而作業系統功能模組148提供作業系統146存取系統資源所需的程式,例如驅動程式等;另一方面,作業系統146還提供控制晶片100執行應用程式142的能力,如此,嵌入式系統10可完成各式各樣的功能,而應用程式142的一些共用的資源則儲存於程式庫144中。當控制晶片100欲控制顯示單元300時,例如將一圖案顯示於顯示單元300,可由處理單元110執行顯示單元300的驅動程式,以便直接在顯示單元300上描繪出該圖案,或是將影像處理單元130處理完成的該圖案顯示於顯示單元300。
圖2為本發明之系統程式區分為使用者空間(user space)與核心空間(kernel space)的示意圖。本發明之系統程式載入記憶體140時,係選擇性載入於兩個獨立虛擬記憶體空間,即使用者空間與核心空間。例如說,所有的使用者模式驅動程式載入於使用者空間,所有的核心模式驅動程式則載入於核心空間。使用者空間包含應用程式142及程式庫144,核心空間包含作業系統146及作業系統功能模組148。作業系統146在執行的時候,可操作於使用者模式(user mode)或核心模式(kernel mode),其中,在使用者模式下僅能存取使用者空間中的資料及程式,而在核心模式下則僅能存取核心空間中的資料及程式。在本發明一實施例中,使用者空間及核心空間分別註冊有顯示單元300的使用者模式驅動程式以及核心模式驅動程式,更詳細地說,顯示單元300的使用者模式驅動程式註冊於程式庫144的使用者模式驅動程式串列1444中,顯示單元300的核心模式驅動程式則註冊於作業系統功能模組148的核心模式驅動程式串列1484中。除了核心模式驅動程式串列1484之外,作業系統功能模組148還包含嵌入式系統10所需的其他功能模組1482。
傳統上,產生系統的驅動程式的方法包含以下的步驟:(1)依據目標硬體的功能、特性以及將使用於使用者模式或核心模式來撰寫程式碼;(2)編譯該程式碼以得到可控制該目標硬體的驅動器邏輯(driver logic);以及(3)將該驅動器邏輯註冊,以得到驅動程式。在步驟(3)中,若將使用於使用者模式的驅動器邏輯註冊於使用者空間,則得到使用者模式驅動程式,而若將使用於核心模式的驅動器邏輯註冊於核心空間,則得到核心模式驅動程式。此外,於步驟(1)所產生的程式碼,即使是對應同樣功能的函數(function),只要其編譯後的驅動器邏輯是註冊到不同的註冊空間,則其所使用的函數介面仍會有所差異。例如說,若想在步驟(3)中得到使用者模式驅動程式,則必須在步驟(1)以符合使用者空間的函數介面來撰寫程式碼,對核心模式驅動程式而言同理。常見的對應相同功能但介面不同的函數包括了複製函數(copy function)、記憶體配置函數(memory allocation function)等。
為使嵌入式系統10能更加流暢地於執行期間在使用者模式驅動程式與核心模式驅動程式之間做選擇,本發明係先統一兩者對應同樣功能但具有不同介面的函數,再執行註冊。如此一來,之後嵌入式系統10可以使用同樣的函數介面呼叫對應同樣功能的函數,提升執行嵌入式系統10執行驅動程式時的便利性。
圖3為本發明統一使用者模式驅動程式與核心模式驅動程式之函數介面的流程圖。首先,為對應相同功能,但介面不同的函數提供單一介面,也就是提供同時適用於使用者空間與核心空間的函數介面(步驟S310)。因為該使用者空間的驅動器邏輯與該核心空間的驅動器邏輯對應相同功能但介面不同的函數可能不只一個,所以步驟S310可能提供不只一個函數介面。接著,以該函數介面包裝(wrap)該使用者空間的驅動器邏輯與該核心空間的驅動器邏輯,以分別產生使用者模式初始驅動程式及核心模式初始驅動程式(步驟S320)。最後將該使用者模式初始驅動程式註冊於使用者空間以產生使用者模式驅動程式(步驟S330),以及將該核心模式初始驅動程式註冊於核心空間以產生核心模式驅動程式(步驟S340)。請注意,步驟S340亦可早於步驟S330執行。更詳細地說,由於該使用者模式初始驅動程式與該核心模式初始驅動程式係統一以同一介面函數作為呼叫介面,因此後續不論是在使用者模式或是核心模式,皆可使用該相同的介面函數呼叫該使用者模式驅動程式或者該核心模式驅動程式,並據以執行相同的操作。
事實上,嵌入式系統10除了顯示單元300之外還包含其他硬體,該些硬體也需要相對應的驅動程式,因此嵌入式系統10包含複數個使用者模式驅動程式以及複數個核心模式驅動程式。該些使用者模式驅動程式以鏈接串列(linked list)的形式存在於使用者模式驅動程式串列1444中,該些核心模式驅動程式以鏈接串列的形式存在於核心模式驅動程式串列1484中。不論是在使用者模式驅動程式串列1444中或是在核心模式驅動程式串列1484中,驅動程式具有各自的識別碼。在本發明的其中一個實施例中,在步驟S330及步驟S340的註冊程序中,使用者模式初始驅動程式與核心模式初始驅動程式以相同的識別碼分別註冊於使用者空間以及核心空間,也就是說,對應相同硬體的驅動程式,在使用者模式驅動程式串列1444中或是在核心模式驅動程式串列1484中有同樣的識別碼。在一實施例中,識別碼可以是驅動程式在鏈接串列(linked list)中的排序,但不以此為限。這樣設計的好處在於方便嵌入式系統10以同樣的識別碼,即可依需求在使用者模式驅動程式串列1444或核心模式驅動程式串列1484中找到對應相同硬體的使用者模式驅動程式或者核心模式驅動程式。
在本發明一實施例中,當嵌入式系統10需要操作一目標硬體(例如顯示單元300或其他硬體)時,首先依據指示代碼得到該目標硬體的一個處理代碼(handle),接著依據一操作指令(例如複製指令(copy))及該處理代碼來操作對應的驅動程式以控制該目標硬體。其中,該對應的驅動程式依需求可以是使用者模式驅動程式,也可以是核心模式驅動程式。。
在一個實施例中,假設該目標硬體的驅動程式在使用者模式驅動程式串列1444及核心模式驅動程式串列1484中的識別碼皆為0x00000001(也就是在使用者模式驅動程式串列1444及核心模式驅動程式串列1484中為第一排序),則對應於使用者模式的指示代碼被處理單元110決定同樣為0x00000001,而對應於核心模式時的指示代碼則為0x80000001。也就是說,兩者只有最高有效位(most significant bit, MSB)不同。因此,在使用者模式下可依據指示代碼0x00000001找到對應的使用者模式驅動程式,而在核心模式下則可依據指示代碼0x80000001找到對應的核心模式驅動程式。
圖4為本發明選擇使用者模式驅動程式或核心模式驅動程式來控制硬體之一實施例的流程圖。首先,接收一操作指令與一指示代碼(步驟S410)。接著,依據該指示代碼決定一識別碼(步驟S420)。實作上,判斷模組1442可以直接使用查找表來判斷指示代碼對應的識別碼,例如指示代碼0x00000001、0x80000001皆對應於識別碼0x00000001;或者,當對應使用者空間與核心空間的指示代碼僅有MSB不同,則判斷模組1442可以利用遮罩(mask)遮蔽指示代碼的MSB來直接得到識別碼。接著,判斷模組1442判斷該指示代碼係對應使用者空間或是核心空間(步驟S430)。實作上,判斷模組1442係由處理單元110執行,其可以直接使用查找表來判斷指示代碼對應使用者空間或核心空間,例如指示代碼為0x00000001對應於使用者模式,指示代碼為0x80000001對應於核心模式。或者,判斷模組1442可以利用遮罩,僅比對指示代碼的MSB,0對應於使用者模式,8對應於核心模式。請注意,步驟420與步驟430的執行順序可以調換,亦可以同步進行。此外,當步驟430先於步驟420進行時,由於已知要選擇的是使用者模式驅動程式或核心模式驅動程式,因此可以直接將指示代碼映射為識別碼。例如當步驟430中判斷為選擇使用者模式驅動程式時,該映射機制不作任何轉換,直接將指示代碼視為識別碼,當步驟430中判斷為選擇核心模式驅動程式時,直接將指示代碼0x80000001映射為0x00000001以作為識別碼。
決定識別碼並判斷出該指示代碼係對應使用者空間或是核心空間後,依據識別碼從對應的空間中決定對應該指示代碼的驅動程式(步驟S440或步驟S450)。也就是說,當指示代碼對應使用者空間,則執行步驟S440,依據識別碼從使用者模式驅動程式串列1444決定對應的使用者模式驅動程式;反之,若指示代碼對應核心空間,執行步驟S450,依據識別碼從核心模式驅動程式串列1484決定對應的核心模式驅動程式。
步驟S440或步驟S450完成後,回傳一處理代碼(handle)(步驟S460)。詳細來說,步驟410~步驟460係透過一開啟指令(open)進行操作。操作的同時,處理單元110首先依據該開啟指令於記憶體140中定義出第一記憶體區間及第二記憶體區間(未繪示),其中,第一記憶體區間屬於使用者空間,第二記憶體區間屬於核心空間。接著,依據判斷出的識別碼所決定的使用者模式驅動程式及核心模式驅動程式,於第一記憶體區間載入對應於所決定的使用者模式驅動程式之資料,以及於第二記憶體區間載入對應於所決定的核心模式驅動程式之資料。前述回傳的處理代碼包含一記憶體位址,當該指示代碼對應於使用者空間,則該記憶體位址指向第一記憶體區間,當該指示代碼對應於核心空間,則該記憶體位址係指向第二記憶體區間。後續對該目標硬體的操作,皆直接依據操作指令與該處理代碼來進行(步驟S470),而無須再進行判斷。詳細來說,嵌入式系統10係直接依據先前所選擇的使用者模式/核心模式驅動程式、以及對應的第一/第二記憶體區間所紀錄的內容來進行操作指令。此外,在一較佳實施例中,依據判斷出的識別碼所決定的使用者模式驅動程式及核心模式驅動程式,處理單元110僅依據該開啟指令於記憶體140中定義出第一記憶體區間(使用者空間)或第二記憶體區間(核心空間),並進行後續流程。
接著,判斷是否繼續操作該目標硬體(步驟S480),如果繼續操作該目標硬體(步驟S480判斷為是),則回到步驟S470,直接依據操作指令與該處理代碼進行操作;反之(步驟S480判斷為否),結束此次對目標硬體的操作(步驟S490)。詳細來說,若不繼續操作該目標硬體,可透過一關閉指令(close ) 清除該處理代碼的值,並且釋放前述第一/第二記憶體區間。
即使在嵌入式系統10的執行期間 (runtime),透過本發明仍可動態決定針對一目標硬體使用核心模式驅動程式或使用者模式驅動程式。例如說,針對同一目標硬體,只要先將使用者模式驅動程式退出(exit),再初始化(initialize)核心模式驅動程式,即可輕易進行使用者模式驅動程式與核心模式驅動程式的切換。又或者,使用者可以透過一文字檔定義每個操作所對應的模式,嵌入式系統10即可讀取該文字檔並據以產生對應的指示代碼,來供後續操作。。
綜上所述,本發明提供了嵌入式系統選擇驅動程式時的彈性,以有效發揮使用者模式驅動程式與核心模式驅動程式各自的特點。舉例來說,當系統需要即時性地操作目標硬體時,可以選擇使用核心模式驅動程式,以得到作業系統的完整支援;然而,當系統需要頻繁性地操作目標硬體時,可以選擇使用使用者模式驅動程式,以避免系統頻繁地切換於保護模式與非保護模式之間,拖累系統效能。
由於本技術領域具有通常知識者可藉由圖1及圖2之裝置發明的揭露內容來瞭解圖3及圖4之方法發明的實施細節與變化,因此雖然本發明之實施例如上所述,然而該些實施例並非用來限定本發明,本技術領域具有通常知識者可依據本發明之明示或隱含之內容對本發明之技術特徵施以變化,凡此種種變化均可能屬於本發明所尋求之專利保護範疇,換言之,本發明之專利保護範圍須視本說明書之申請專利範圍所界定者為準。
10‧‧‧嵌入式系統
100‧‧‧控制晶片
110‧‧‧處理單元
120‧‧‧快閃記憶體控制器
130‧‧‧影像處理單元
140‧‧‧記憶體
142‧‧‧應用程式
144‧‧‧程式庫
146‧‧‧作業系統
148‧‧‧作業系統功能模組
1442‧‧‧判斷模組
1444‧‧‧使用者模式驅動程式串列
1482‧‧‧其他功能模組
1484‧‧‧核心模式驅動程式串列
200‧‧‧快閃記憶體
300‧‧‧顯示器
S310~S340、S410~S490‧‧‧步驟
[圖1]為一個嵌入式系統的局部功能方塊圖; [圖2]為本發明之系統程式的使用者空間與核心空間的示意圖; [圖3]為本發明統一使用者模式驅動程式與核心模式驅動程式之函數介面的流程圖;以及 [圖4]為本發明選擇使用者模式驅動程式或核心模式驅動程式來控制硬體之一實施例的流程圖。
S410~S490
Claims (16)
- 一種操作一嵌入式系統之方法,該嵌入式系統包含一目標硬體,該嵌入式系統之一作業系統具有一使用者模式及一核心模式,該方法包含:提供一使用者模式驅動程式,該使用者模式驅動程式執行於該使用者模式,用來控制該目標硬體;提供一核心模式驅動程式,該核心模式驅動程式執行於該核心模式,用來控制該目標硬體;以及依據一指示代碼決定使用該使用者模式驅動程式或該核心模式驅動程式來控制該目標硬體;其中該使用者模式驅動程式與該核心模式驅動程式係控制該目標硬體之一相同功能。
- 如申請專利範圍第1項所述之方法,更包含:依據一函數介面產生對應於該目標硬體之該相同功能之一使用者模式初始驅動程式與一核心模式初始驅動程式;將該使用者模式初始驅動程式註冊於該嵌入式系統之一記憶體中的一使用者空間以得到該使用者模式驅動程式;以及將該核心模式初始驅動程式註冊於該嵌入式系統之該記憶體中的一核心空間以得到該核心模式驅動程式。
- 如申請專利範圍第2項所述之方法,其中該使用者模式初始驅動程式與該核心模式初始驅動程式係以相同之一識別碼分別註冊於該使用者空間及該核心空間。
- 如申請專利範圍第3項所述之方法,其中該識別碼係對應於該使用者模式初始驅動程式註冊於該使用者空間時,於一鏈接串列中的排序。
- 如申請專利範圍第1項所述之方法,其中,該依據該指示代碼決定使用該使用者模式驅動程式或該核心模式驅動程式之步驟係依據該指示代碼之一最高有效位(most significant bit,MSB)進行。
- 如申請專利範圍第1項所述之方法,更包含:依據該指示代碼得到一處理代碼,該處理代碼用來指向一記憶體空間,該記憶體空間儲存有該使用者模式驅動程式與該核心模式驅動程式的其中之一所對應的一資料。
- 如申請專利範圍第6項所述之方法,更包含:依據該資料控制該目標硬體。
- 如申請專利範圍第1項所述之方法,更包含:在該嵌入式系統的執行期間(runtime),退出該使用者模式驅動程式及該核心模式驅動程式的其中一者,並初始化另一者,以切換該使用者模式驅動程式或該核心模式驅動程式來控制該目標硬體。
- 一種嵌入式系統之控制晶片,該控制晶片用來控制該嵌入式系統之一目標硬體,該控制晶片包含:一處理單元,用來執行一作業系統以實現該嵌入式系統之功能,該作業系統具有一使用者模式及一核心模式;以及一記憶體,耦接該處理單元,用來儲存該嵌入式系統之系統程式,包含:一使用者模式驅動程式,執行於該使用者模式,用來控制該目標硬體;一核心模式驅動程式,執行於該核心模式,用來控制該目標硬體;以及一判斷模組;其中,該處理單元係執行該判斷模組來依據該目標硬體所對應之一指示代碼決定使用該使用者模式驅動程式或該核心模式驅動程式以控制該目標硬體,且該使用者模式驅動程式與該核心模式驅動程式係控制該目標硬體之一相同功能。
- 如申請專利範圍第9項所述之嵌入式系統的控制晶片,其中該處理單元更依據一函數介面產生對應於該目標硬體之該相同功能之一使用者模式初始驅動程式與一核心模式初始驅動程式。
- 如申請專利範圍第10項所述之嵌入式系統的控制晶片,其中該嵌入式系統之一記憶體包含一使用者空間及一核心空間,該處理單元更將該使用者模式初始驅動程式註冊於該使用者空間以得到 該使用者模式驅動程式,以及將該核心模式初始驅動程式註冊於該核心空間以得到該核心模式驅動程式。
- 如申請專利範圍第11項所述之嵌入式系統的控制晶片,其中該處理單元係以相同之一識別碼分別將該使用者模式初始驅動程式與該核心模式初始驅動程式註冊於該使用者空間及該核心空間。
- 如申請專利範圍第12項所述之嵌入式系統的控制晶片,其中該識別碼係對應於該使用者模式初始驅動程式註冊於該使用者空間時,於一鏈接串列中的排序。
- 如申請專利範圍第9項所述之嵌入式系統的控制晶片,其中該處理單元係執行該判斷模組來依據該指示代碼之一最高有效位決定使用該使用者模式驅動程式或該核心模式驅動程式以控制該目標硬體。
- 如申請專利範圍第9項所述之嵌入式系統的控制晶片,其中該處理單元更執行該判斷模組來依據該指示代碼得到一處理代碼,該處理代碼係用來指向該記憶體中之一記憶體空間,該記憶體空間儲存有該使用者模式驅動程式與該核心模式驅動程式的其中之一所對應的一資料。
- 如申請專利範圍第15項所述之嵌入式系統的控制晶片,其中該控制晶片更依據該資料控制該目標硬體。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW105107687A TWI592803B (zh) | 2016-03-11 | 2016-03-11 | 嵌入式系統之操作方法與控制晶片 |
US15/363,297 US20170262292A1 (en) | 2016-03-11 | 2016-11-29 | Method of operating embedded system and control chip thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW105107687A TWI592803B (zh) | 2016-03-11 | 2016-03-11 | 嵌入式系統之操作方法與控制晶片 |
Publications (2)
Publication Number | Publication Date |
---|---|
TWI592803B true TWI592803B (zh) | 2017-07-21 |
TW201810048A TW201810048A (zh) | 2018-03-16 |
Family
ID=59786489
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW105107687A TWI592803B (zh) | 2016-03-11 | 2016-03-11 | 嵌入式系統之操作方法與控制晶片 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20170262292A1 (zh) |
TW (1) | TWI592803B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11360829B2 (en) * | 2018-10-16 | 2022-06-14 | Ngd Systems, Inc. | System and method for communicating between computational storage devices |
CN110502325B (zh) * | 2019-08-12 | 2023-06-02 | 北京和利时***工程有限公司 | 一种任务运行方法及装置、计算机可读存储介质 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7406603B1 (en) * | 1999-08-31 | 2008-07-29 | Intertrust Technologies Corp. | Data protection systems and methods |
ATE443291T1 (de) * | 2002-06-19 | 2009-10-15 | Ericsson Telefon Ab L M | Netzwerkeinrichtungs-treiberarchitektur |
US9256440B1 (en) * | 2009-03-30 | 2016-02-09 | Amazon Technologies, Inc. | Facilitating device driver interactions |
US8352797B2 (en) * | 2009-12-08 | 2013-01-08 | Microsoft Corporation | Software fault isolation using byte-granularity memory protection |
US8402479B2 (en) * | 2010-03-17 | 2013-03-19 | Adam Kaiser | Device control call allocation for embedded system design |
US8806511B2 (en) * | 2010-11-18 | 2014-08-12 | International Business Machines Corporation | Executing a kernel device driver as a user space process |
US9384015B2 (en) * | 2013-07-16 | 2016-07-05 | Intel Corporation | Techniques for dynamically redirecting device driver operations to user space |
US9934067B2 (en) * | 2014-01-30 | 2018-04-03 | Vmware, Inc. | Synchronous user space function execution from a kernel context |
US9804990B2 (en) * | 2014-08-27 | 2017-10-31 | Vmware, Inc. | Sharing unclaimed USB devices as PCI devices |
-
2016
- 2016-03-11 TW TW105107687A patent/TWI592803B/zh not_active IP Right Cessation
- 2016-11-29 US US15/363,297 patent/US20170262292A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
TW201810048A (zh) | 2018-03-16 |
US20170262292A1 (en) | 2017-09-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8726292B2 (en) | System and method for communication in a multithread processor | |
US10824467B2 (en) | Data processing system with protected mode of operation for processing protected content | |
JP2008171428A (ja) | プロセッサが規格合致するように見えるアーキテクチャ・レベルを選択するための方法および装置 | |
US6415338B1 (en) | System for writing a data value at a starting address to a number of consecutive locations equal to a segment length identifier | |
JP2007133456A (ja) | 半導体装置 | |
JP2017504870A (ja) | 自律的メモリの方法及びシステム | |
TWI592803B (zh) | 嵌入式系統之操作方法與控制晶片 | |
JP2008522277A (ja) | 優先度の付けられたタスク間の効率的な切り換え | |
CN1304944C (zh) | 预先读取脱序执行指令的方法及处理器 | |
EP1599803B1 (en) | Reducing cache trashing of certain pieces | |
WO2009098737A1 (ja) | 外部デバイスアクセス装置、その制御方法及びシステムlsi | |
US9372723B2 (en) | System and method for conditional task switching during ordering scope transitions | |
JP3893136B2 (ja) | 組込みコンピュータ制御プログラム、そのプログラムを記録した記録媒体、及び組込みシステム | |
JP2011070290A (ja) | データプロセッサ | |
US20150363227A1 (en) | Data processing unit and method for operating a data processing unit | |
JP2001195261A (ja) | 外部メモリから内蔵メモリへのプログラム転送方法およびその転送方法を用いたマイクロコンピュータ | |
JP2007122337A (ja) | 演算装置 | |
CN1902582A (zh) | 具有优化的存储器访问的数字信号处理器架构 | |
JP2004103012A (ja) | プロセッサの動作速度を向上させるキャッシュ構造及びキャッシュ管理方法を有するプロセッサ | |
TW201826114A (zh) | 半導體裝置的處理器與其操作方法 | |
JP2012155515A (ja) | ソースデバイスドライバ及び実行モジュールの作成方法 | |
JPH0744401A (ja) | 論理集積回路およびそのデータ処理システム | |
JP2009509214A (ja) | スレッドコールテーブルを用いたコンピュータ装置への機能性の付加 | |
JP6138482B2 (ja) | 組み込みシステム | |
JPH06110707A (ja) | 高優先度割り込み方法及び該方法が採用されたマイクロプロセッサ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | Annulment or lapse of patent due to non-payment of fees |