TWI222291B - Remote data accessing method and computer using the method using a simulator to interrupt the read request and issue an interrupt signal to the processor - Google Patents

Remote data accessing method and computer using the method using a simulator to interrupt the read request and issue an interrupt signal to the processor Download PDF

Info

Publication number
TWI222291B
TWI222291B TW92116107A TW92116107A TWI222291B TW I222291 B TWI222291 B TW I222291B TW 92116107 A TW92116107 A TW 92116107A TW 92116107 A TW92116107 A TW 92116107A TW I222291 B TWI222291 B TW I222291B
Authority
TW
Taiwan
Prior art keywords
processor
computer
simulator
data
remote
Prior art date
Application number
TW92116107A
Other languages
Chinese (zh)
Other versions
TW200428815A (en
Inventor
Yi-Ji Lai
Original Assignee
Acer Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Acer Inc filed Critical Acer Inc
Priority to TW92116107A priority Critical patent/TWI222291B/en
Application granted granted Critical
Publication of TWI222291B publication Critical patent/TWI222291B/en
Publication of TW200428815A publication Critical patent/TW200428815A/en

Links

Landscapes

  • Debugging And Monitoring (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

The remote data accessing method of the invention accesses the data in a remote computer by virtue of a computer. The procedures are; firstly, receive a read request transmitted from a processor of the computer to a hard disk, subsequently, use a simulator to interrupt the read request and issue an interrupt signal to the processor, making the processor enter an independent operation mode irrelevant to an operating system (OS), after the processor enters into the independent operating mode, read the corresponding data in a hard disk of the remote computer and then store in a data register, and lastly issue an interrupt request (IRQ) from the simulator to recover to the processor under the normal mode in completion of the read action.

Description

玖、發明說明: 【發明所屬之技術領域】 本發明是有關於一種與作業系統無關之遠端資料存 取方法與與使用該方法之電腦,特別是指一種利用處理器 5 之系統管理模式來進行遠端資料存取之方法與使用該方 法之電腦。 【先前技術】 由於電腦網路日漸普及,一但某電腦之需求不足,例 如需要進行應用程式、作業系統的更換、升級時,常會透 _ 過區域網路、網際網路等,自一遠端電腦上下載所需要的 程^,然而對於網路系統管理者而言,為了能夠有效地統 笞里狄莩握各電腦的情況,因此遂有藉由遠端電腦來統 一集中、管理所有軟體的觀念產生。 網路電腦(network computer,NC),乃是一僅具備有簡 單之作業系統的終端電腦,在此電腦一開機後,它會自動 地連接到一遠端電腦(伺服器)進行資料存取,並自遠端的 電月6?下載其品執行的軟體,因此若所有的終端電腦需要進 善 行軟體的更新、升級等動作,僅需在遠端的伺服電腦上一 次進行以後,待下次網路電腦再捉取軟體時,即「彷彿」 -〇 已更新其自身的軟體(事實上,網路電腦並未具備有任何應 · 用程式)。但是,網路電腦的問題在於應用程式僅限於Java 或JavaScript,因此並不能採用現有的應用程式(例如 Microsoft Word),使其功能大為受限。 另一種架構則是所謂的遠端安裝服務(rem〇te 4 1222291 5 aJ】atI0n SerViCes,Ris),其概念是利用一⑽伺服 管理終端電腦所需要的軟體,然其缺點在於··在:行 =安裝的動作前,除了需要在R f s伺服器與終端電腦:: 女4有相同的作H統與相對應的RIS應用程式外,尚兩 對終端電腦作進—步設定(例如DHCP、DNS主機),另二 方面’由於資料在經由RIS伺服器傳送至終端電腦前,需 先經由RIS應用程式將其轉換成RiS格式,因此若所欲傳 达的資料具備有防拷保護機制而非標準的資料格式時在 此轉換的過程中即可能產生錯誤。 10 15 ^ 圖1所示之「資料映像系統」,其係在電腦500 中裝設有-模擬器(emu】ator)202,此模擬器2〇2是用來截 斷作業系統所發出6"/0訊號(讀/寫要求,read/write q )換。之,此杈擬器202之功能在於作為一虛擬硬 碟’且其自身並與遠端電腦(飼服器)2〇4透過網路連線,當 模擬器202 -旦接收讀寫要求時,即會先由自身實體硬: η"ί行搜尋並判斷資料是否為最新,若非最新則會透 過模擬器202自遠端電腦204之實體硬4 205中自動下載 最新㈣料至實體硬碟1則,自動完成更新、升級的動 作L雖此法較前述方法為佳’但由於此模擬器2〇22. Description of the invention: [Technical field to which the invention belongs] The present invention relates to a remote data access method and a computer using the method independent of the operating system, and particularly to a system management mode using the processor 5 Method for remote data access and computer using the method. [Previous technology] Due to the increasing popularity of computer networks, once a computer's needs are insufficient, such as when applications, operating systems need to be replaced or upgraded, it will often pass through a local network, the Internet, etc. Download the programs you need on your computer ^ However, for the network system manager, in order to effectively control the situation of each computer, there is a unified and centralized management of all software by remote computers. Ideas arise. A network computer (NC) is a terminal computer with a simple operating system. When this computer is turned on, it will automatically connect to a remote computer (server) for data access. And download the software for its products from the remote electricity month, so if all terminal computers need to perform good software update, upgrade and other actions, you only need to do it once on the remote server computer and wait for the next time When the road computer captures the software, it is "as if" -〇 has updated its own software (in fact, the network computer does not have any application programs). However, the problem with network computers is that applications are limited to Java or JavaScript, so existing applications (such as Microsoft Word) cannot be used, limiting their functionality. The other architecture is the so-called remote installation service (remote 4 1222291 5 aJ) atI0n SerViCes, Ris. Its concept is to use a server to manage the software required by the terminal computer, but its disadvantages are: = Before the installation, in addition to the R fs server and the terminal computer :: Female 4 has the same operating system and corresponding RIS applications, there are still two pairs of terminal computers to make further settings (such as DHCP, DNS Mainframe), the other two aspects, because the data needs to be converted into RiS format by RIS application before being transmitted to the terminal computer through the RIS server, so if the data to be transmitted has a copy protection mechanism instead of standard Data may be formatted incorrectly during this conversion. 10 15 ^ The "data mapping system" shown in Figure 1, which is equipped with an emulator ator 202 in the computer 500. This simulator 202 is used to intercept the operating system. 6 " / 0 signal (read / write request, read / write q). In other words, the function of this simulator 202 is to act as a virtual hard disk and connect itself to a remote computer (feeder) 204 via a network. When the simulator 202 receives a read and write request, That is, it will first be hardened by its own entity: η " Search and determine whether the data is up-to-date. If it is not the latest, it will automatically download the latest data from the physical hard disk 4 of the remote computer 204 to the physical hard disk 1 through the simulator 202 , The automatic completion of the update and upgrade action L Although this method is better than the previous method ', but because of this simulator 202

20 需負責資料存取的全部過程’因此需要獨立的中央處理 器、,態P錢存取記憶體、控制單元...等構件,傲然成為 -具微型主機’故此模擬器搬之建置成本甚高,特別是 在具有多冑電腦500的網路架構下’若每台電腦則皆行 裝設’則其整體成本更甚可觀。 5 另外,上段中所述之更詳細内容,已進_步揭露於美 國專利$ 6,477,624料财巾,以下將其全文併入本案 作為參考資料。 〃 【發明内容】 由上述習知技術中可以了解,需要一種能夠以成本低 廉方式來建構模擬器’特別是,若能使模擬器獨立於作業 系、’先外工作,即錢得模擬^㈣相容於各式電腦而能增 加其使用彈性。 因此,本發明之目的即在於提供一種建置成本低廉, 並能夠獨立於作業系統外之遠端資料存取方法及使用該 方法之電腦。 …於是,在-較佳實施例中’本發明遠端資料存取方法 是藉由-電腦來存取一遠端電腦中的資料,其步驟是先接 收該電腦中之-處理器欲傳送至—硬碟之讀取要求,接著 利用-模擬器來中斷(trap)該讀取要求,在中斷該讀取要求 後,由該模擬器發送一中斷訊號至該處理器, 進入一與一作業系統無關之獨立作業模式。 /处 當該處理器進入該獨立作業模式後,自該遠端電腦之 -硬碟中讀取相對應之資料後儲存在一資料暫存器中,最 後模擬器即發送一中斷要求(IRQ)至回復至正常模式下的 該處理器,完成讀取動作。20 Responsible for the entire process of data access 'so components such as an independent central processing unit, state memory access memory, control unit, etc., proudly become-with a micro-host', so the simulator installation cost Very high, especially in a network architecture with multiple computers 500, 'if each computer can be installed', the overall cost is even more considerable. 5 In addition, the more detailed content described in the previous paragraph has been further disclosed in the US patent $ 6,477,624, which is incorporated herein by reference in its entirety.发明 [Summary of content] As can be understood from the above-mentioned conventional technology, there is a need for a simulator that can be constructed in a cost-effective manner. In particular, if the simulator can be independent of the operating system and 'external work, that is, money simulation ^ ㈣ Compatible with various computers to increase its flexibility. Therefore, an object of the present invention is to provide a remote data access method and a computer using the method which are low in construction cost and can be independent of an operating system. ... then, in the preferred embodiment, the method of remote data access in the present invention is to access data in a remote computer through a computer, the step of which is to first receive the processor in the computer to send to —Hard disk read request, and then use the simulator to interrupt the read request. After interrupting the read request, the simulator sends an interrupt signal to the processor, and enters an operating system. Irrelevant independent operation mode. After the processor enters the independent operation mode, the corresponding data is read from the hard disk of the remote computer and stored in a data register. Finally, the simulator sends an interrupt request (IRQ) Until the processor returns to the normal mode, the reading operation is completed.

在該較佳實施例中,本發明亦提供一電腦,此電腦是 與一遠端電腦相連線,該電腦包含一處理哭、I 口° 一" έ己憶體, 以及一模擬器。 1222291 在存有複數電腦程式碼’該等電腦程式碼是 :處'在一與一作業系統無關之獨立作業模式下所 執行。該模擬器是與該處理器相連接,並具有 及—緩衝記憶體。 以 5 該解碼器是能夠依據該處理器所發出之—讀取要 求’產生-觸發該處理器、進人該獨立作業模式之中斷訊 號:使該處理器於該獨立作模式下執行該等電腦程式碼, 並當該處理器自該遠端電腦捉取對應於該讀取要长之次 10 料並回復至-正常模式後,發送—中斷要求(卿至該處二 器。該緩衝記憶體則是絲職該處㈣自該遠端電腦中 所捉取的資料。 【實施方式】 有關本發明之前述及其他技術内容、特點與功效,在 15 以下配合參考圖式之一較佳實施例的詳細說明中,將可清 楚的明白。 / 20 參閱圖2與圖3 ’在本發明之系統架構下,一近端電 腦100是與一遠端電腦200相連線,且其連線方式可以I 透過區域網路(LAN)'廣i或區域網路(WLAN)或是網際網路 (Internet)等等,因此,近端電腦1〇〇能透過標準的網路傳 輸協定(例如TCP/IP)來與遠端電腦2〇〇相通訊。 近端電腦100中包含有一供實體網路連接的網路介面 卡(NIC)l、一與網路介面卡i相連接之處理器 (processor^、一唯讀記憶體3、一隨機存取記憶體(RAM, 或稱主記憶體)4。唯讀記憶體3中已存有複數電腦程式 7 1222291 碼,或稱為基本輸入/輸出系統(BIOS),是當近端電腦100 開機時,由處理器2自唯讀記憶體3中加以捉取、執行, 以便進行自我開機測試(POST)等動作。 一般而言’上述各構件皆是設置在一主機板(圖未不) 5 上,且此主機板會提供有各式標準的擴充匯流排,例如 IDE、ISA、AGP···等等,供使用者擴充之用。特別是,一 般在近端電腦100上更要需有一安設在IDE匯流排300上 之硬碟(第一儲存裝置,圖未示),以便儲存作業系統,例 如 Microsoft Windows 98、Windows2000、WindowsNT 等 10 等,然而在本發明之架構下,實體硬碟則非必要,關於此 部分將於下文中再詳細說明。 特別要說明的是,處理器2特別是指Intel 80386以後 型號之處理器,例如Intel 80486、Pentium…,或是AMD K5、K6等具備有能夠在一獨立於作業系統外之獨立作業 15 模式的處理器2。所謂的獨立作業模式,乃是指處理器2 之運作能夠不涉及任何應用程式或作業系]统之作業模 式,一個例子是系統管理模式(system management mode, SMM),起初是由Intel公司為了便於電源管理所設計的工 作模式,它僅需利用一系統管理中斷(SMI)信號來觸發處理 20 器2,即能使處理器2進入此模式,而在此模式下,處理 器2依然具備有支援網路驅動程式、系統週邊驅動程式、 資料安全監控等能力。 當處理器2由正常模式進入系統管理模式中時,會先 儲存正常模式下所執行之程式碼狀態,並進入主記憶體4 8 1222291 中一獨立的定址空間來執行相對應的SMM程式碼 (subroutines),4列 士口圖 5 所示 3000:FFFh〜3000:0000h 間, 因此具有極高的安全性且與作業系統或應用程式皆無關 連,而當處理器2執行SMM電腦程式碼中之指令後, 5 即會回到原先正常模式下,繼續受到作業系統之控制。至 於處理器2於此系統管理模式下所執行的功能,端視SMM 程式碼之編寫内容而定。 另一個相類似的模式是線上模擬(in circuit simulator, ICE)模式,或稱偵錯模式(debugging mode)、探測模式 10 (probe mode)等,係為了便於進行程式的偵錯所設定之一 處理器模式,所能支援的功能大致與上述系統管理模式無 異,故不再贅述。不同的是,觸發處理器2進入線上模擬 模式之訊號是R/S#信號(以Intel Pentium處理器為例),若 欲使處理器2脫離線上模擬模式,則是在線上模擬模式下 15 所執行的電腦程式碼中加入「end profoe mode j指令,或 是以外部硬體使R/S#信號由高變低,再由低變高後(正緣 觸發),即能使處理器2脫離線上模擬模式而回復到正常模 式下。 因此,本實施例中更包含一與處理器2相連接之記憶 20 體(SMM handler)5,其内部儲存有複數SMM電腦程式碼, 這些SMM電腦程式碼並能夠分為多個模組,各個模組能 夠依據特定的I/O指令,對遠端電腦200中之一第二儲存 裝置(圖未示)進行讀取/寫入的動作。當然,這些SMM電 腦程式碼亦可與BIOS —併儲存在唯讀記憶體3中,待電 9 1222291 腦100開機後,即自動載入主記憶體4中,並當處理器2 進入系統管理模式後,才會由特定的記憶體定址空間中加 以捉取、執行。 此外,本實施例更包含一模擬器6,此模擬器6是裝 5 設在電腦100中,並具有一介面單元61、一解碼器 (decoder)62、一控制暫存器(control register)63、一 狀態暫 存器(status register)64、一錯誤暫存器(error register)65、 一計數暫存器(counter register)66 、 兩多工器 (multiplexer)67、68,以及緩衝記憶體(buffer RAM)69。 10 介面單元61,在本實施例中是指一 IDE介面,因此能 藉由此介面單元61,使得模擬器透過IDE匯流排300與處 理器2相連接。當然,其它諸如ATA、SCSI'ATAPI、ATA-E、 ESDI、USB等介面,亦屬本實施例之一簡單變化而已。 解碼器62是與介面單元61相連接,也就能接收來自 15 於處理器2的控制信號、資料信號以及位址信號,當然, 如圖3所示,此三種信號分別是由控制匯流排(control bus)、資料匯流排(data bus),以及位址匯流排(address bus) 所傳送。當解碼器62接收到來自於處理器2的I/O信號 後,除了能依據該信號之内容,解碼為欲傳送至特定暫存 20 器63〜66上的控制信號外,尚能依據I/O信號而送出一系 統管理中斷(SMI)訊號至處理器2,使得處理器2能進入系 統管理模式並執行SMM電腦程式碼。待處理器2由系統 管理模式回復至正常模式時,解碼器62亦能發出中斷要 求(IRQ)。 10 5 %^6,之_要求_’其目的為通知作業 ^貧料傳送動作之告-段m的時機為每當計數暫 存器66倒數至零時(表示傳送成功)或SMM電腦程式碼將 U錯誤代碼填人錯誤暫#|| 65時(表㈣送失敗),俾使 作業系統能依據狀態暫存器64、錯誤暫存器65,以及計 數暫存器66之内容判斷資料傳送是否成功或失敗。中斷 要求陶)之種類依模擬之儲存裝置而定,在本實施例中因 板擬IDE介面裝置’故為IRQ14(第十四號中斷,為主要 10 IDE介面所使用)或IRQ15(第十五號中斷,為次要咖介 面所使用)。 15 控制暫存器63能依SMM電腦程式碼來控制資料的讀 取或寫入。狀態暫存器64是用來儲存目前模擬器6為輸 入(input)、凟出(readout)等狀態的資訊,以及緩衝記憶體 69是否為空位(empty)、滿溢(化⑴等狀態的資訊。錯誤暫 存器65是當錯誤發生時,即會儲存有表示「錯誤」的資 訊。計數暫存器66則是用來儲存讀取或寫入時,下一個 緩衝6己憶體69中資料的位址。這些暫存器ο〜66與一般 镛 暫存器的功能大致相同,且為熟知此技者所能輕易了解, 故不再詳細贅述。 20 緩衝記憶體69是用來儲存處理器2自遠端電腦200 中所讀取回來的資料,此部分將在下文中一併說明。在本 實施例中,緩衝記憶體69之儲存容量大小可以是512In the preferred embodiment, the present invention also provides a computer, which is connected to a remote computer. The computer includes a crying device, a mouthpiece, and a simulator. 1222291 In the presence of plural computer codes, these computer codes are: executed in an independent operation mode that is independent of an operating system. The simulator is connected to the processor and has and-buffer memory. 5 The decoder is able to generate-trigger the processor and enter the independent operation interrupt signal according to the "read request" issued by the processor: to enable the processor to execute the computers in the independent operation mode. Code, and when the processor captures the data corresponding to the read time from the remote computer and returns to-normal mode, it sends-an interrupt request (Qing to the second device. The buffer memory It is the information collected by the department from the remote computer. [Embodiment] Regarding the foregoing and other technical contents, features and effects of the present invention, a preferred embodiment with reference to the drawings below 15 In the detailed description, it will be clearly understood. / 20 Refer to FIG. 2 and FIG. 3 'Under the system architecture of the present invention, a near-end computer 100 is connected to a far-end computer 200, and the connection method can be I Through a local area network (LAN), a wide area network, a local area network (WLAN), or the Internet, etc., so the near-end computer 100 can pass a standard network transmission protocol (such as TCP / IP ) To communicate with the remote computer 2000. 100 includes a network interface card (NIC) 1 for physical network connection, a processor (processor ^) connected to the network interface card i, a read-only memory 3, and a random access memory (RAM (Or main memory) 4. The read-only memory 3 already has a plurality of computer program codes 7 1222291, or the basic input / output system (BIOS). When the near-end computer 100 is powered on, the processor 2 It is captured and executed in the read-only memory 3 to perform actions such as self-power-on test (POST). Generally speaking, the above components are all set on a motherboard (not shown) 5 and the motherboard Various standard expansion buses will be provided, such as IDE, ISA, AGP, etc., for users to expand. In particular, generally, the near-end computer 100 requires an IDE bus. 300 hard disks (first storage device, not shown) for storing operating systems, such as Microsoft Windows 98, Windows 2000, Windows NT, etc. 10, but under the framework of the present invention, a physical hard disk is not necessary. Some will be explained in more detail below In particular, processor 2 refers to processors of Intel 80386 and later types, such as Intel 80486, Pentium, etc., or AMD K5, K6, etc., which have 15 modes that can operate independently of the operating system. Processor 2. The so-called independent operation mode refers to the operation mode of the processor 2 without involving any application or operating system. An example is the system management mode (SMM). The working mode designed by Intel Corporation for the convenience of power management, it only needs to use a system management interrupt (SMI) signal to trigger the processor 2 to enable the processor 2 to enter this mode. In this mode, the processor 2 Still have the ability to support network drivers, system peripheral drivers, data security monitoring, etc. When the processor 2 enters the system management mode from the normal mode, it will first store the state of the code executed in the normal mode and enter a separate address space in the main memory 4 8 1222291 to execute the corresponding SMM code ( subroutines), as shown in Figure 5 at 4: 3000: FFFh ~ 3000: 0000h, so it has very high security and has nothing to do with the operating system or applications. When the processor 2 executes the instructions in the SMM computer code, After that, 5 will return to the original normal mode and continue to be controlled by the operating system. As for the functions performed by the processor 2 in this system management mode, it depends on the content of the SMM code. Another similar mode is the in-circuit simulator (ICE) mode, or debugging mode (probe mode), etc., which is one of the settings for the convenience of program debugging. Device mode, the supported functions are roughly the same as the above system management mode, so I wo n’t repeat them. The difference is that the signal that triggers processor 2 to enter the online simulation mode is the R / S # signal (take Intel Pentium processor as an example). If you want to take the processor 2 out of the online simulation mode, it is 15 in the online simulation mode. Add the "end profoe mode j" instruction to the executed computer code, or use external hardware to change the R / S # signal from high to low, and then change from low to high (triggered by positive edge), then the processor 2 can be disconnected. The online simulation mode returns to the normal mode. Therefore, in this embodiment, a memory 20 (SMM handler) 5 connected to the processor 2 is also stored, and a plurality of SMM computer program codes are stored therein. These SMM computer program codes It can be divided into multiple modules, and each module can read / write to a second storage device (not shown) in the remote computer 200 according to specific I / O instructions. Of course, these The SMM computer code can also be stored in the read-only memory 3 with the BIOS. When the computer 9 is powered on, it will be automatically loaded into the main memory 4 after it is powered on. After the processor 2 enters the system management mode, Space is addressed by specific memory In addition, this embodiment further includes a simulator 6, which is installed in the computer 100 and has an interface unit 61, a decoder 62, and a control unit. Register (control register) 63, a status register (status register) 64, an error register (error register) 65, a counter register (counter register) 66, two multiplexers (multiplexer) 67, 68, and buffer RAM 69. 10 The interface unit 61 refers to an IDE interface in this embodiment, so the interface unit 61 can be used to make the simulator communicate with the processor 2 through the IDE bus 300. Of course, other interfaces such as ATA, SCSI'ATAPI, ATA-E, ESDI, USB, etc., are just a simple variation of this embodiment. The decoder 62 is connected to the interface unit 61, and can receive data from 15 Control signal, data signal and address signal of processor 2. Of course, as shown in FIG. 3, these three signals are respectively a control bus, a data bus, and an address bus. (Address bus). When After the decoder 62 receives the I / O signal from the processor 2, in addition to being able to decode the signal to be transmitted to the specific temporary storage device 63 ~ 66 according to the content of the signal, it can also be based on the I / O. The signal sends a system management interrupt (SMI) signal to the processor 2 so that the processor 2 can enter the system management mode and execute the SMM computer program code. When the processor 2 returns from the system management mode to the normal mode, the decoder 62 can also issue an interrupt request (IRQ). 10 5% ^ 6, of which _request_ 'is for the purpose of notifying the operation ^ Report of poor material transmission action-The timing of segment m is whenever the counting register 66 counts down to zero (indicating successful transmission) or SMM computer code Fill the U error code into the error temporary # || 65 hours (the table fails to send), so that the operating system can determine whether the data transfer is based on the contents of the status register 64, the error register 65, and the count register 66 Success or failure. The type of interrupt request depends on the simulated storage device. In this embodiment, because the board is intended to be an IDE interface device, it is IRQ14 (the fourteenth interrupt, used by the main 10 IDE interfaces) or IRQ15 (the fifteenth No. interrupt, used by the secondary coffee interface). 15 The control register 63 can control the reading or writing of data according to the SMM computer code. The state register 64 is used to store information about the current state of the simulator 6 as input, readout, and other information, and whether the buffer memory 69 is empty, overflowed, or other states. The error register 65 stores information indicating "error" when an error occurs. The count register 66 is used to store the data in the memory 6 and the next buffer 6 when reading or writing. The addresses of these registers ο ~ 66 are roughly the same as general 镛 registers, and are easily understood by those skilled in the art, so they will not be described in detail. 20 Buffer memory 69 is used to store the processor 2 The data read from the remote computer 200, this part will be described below together. In this embodiment, the storage capacity of the buffer memory 69 may be 512

Bytes,或是 512 Bytes 的倍數(例如 1024、2048···)等等。 為了能夠使得處理器2在正常模式以及系統管理模式 11 1222291 二,:同的1/0痒進行控制信號與資料的傳輸,因 而夕工益67' 68來進行資料與位址路徑的切換,本 實施例中,多工器67是負責讀取/寫人緩衝記憶體的 5 枓路控的切換,多工器68収負責緩衝記憶體 址 路徑的切換。 Μ 10 a夕工杰66、67疋由解碼器' 62所控制,當處理器^ 正常模式下,是經由圖3中之實線箭頭來進行ι/〇她 傳遞”;當解碼器62已接㈣I/G信號,而發送系統管理— 心號給處理器2時,同時控制多工器67、68進行路名 切換,使得控制信號、資料錢,以及位址信號能夠㈣ 圖4中之虛線箭頭來傳送至各個暫存器63〜66與多工录 67 68上。因此在正常模式下,緩衝記憶體的之位址逼 擇’以及貰料的讀取/寫入是經由一路徑,而在系統管理指 式下,則是經由另一路徑,兩者並不互相抵觸。 15 20 荼閱圖5與圖6,當近端電腦1〇〇開機後,會先載入 唯讀記憶體3中之BI0S,並進行自我開機測試(P0ST), 在自我開機測試無誤後,BIqS即會控制處理器、2送出讀 取要求(read request)來尋找開機程式,在一般的情況下, 疋透過IDE匯流排300來尋找硬碟中的開機程心此時 處理器2尚處於正常模式下,如圖5之路徑①所示。 在本實施例中,雖未具備有實體硬碟,然而,模擬器 之功用即在模擬一實體硬碟,換言之,由於模擬器6是 透過IDE匯流排300與處理器2相耦接,因此處理器二所 送出之讀取要求將會傳送至模擬器6上。 12 1222291 5 10 15 如步驟601所示,由於處理器2「以為」實體硬碟存 在於近端電腦1〇〇中,故透過IDE匯流排300所發出的讀 取要求亦包含了所欲讀取磁區(512 bytes)的位址與相關資 訊等等。接著,如步驟6〇2與路徑②所示,在解碼器62接 收到此一碩取要求後,換言之,即中斷(trap) 了處理器2之 讀取要求,並進一步產生系統管理中斷信號,使得處理器 2進入系統管理模式,並使處理器2得知所欲讀取資料之 位址。 如步驟603與路徑③、④,當處理器2進入系統管理 模式後,即會執行SMM程式碼,並嚐試自遠端電腦 中β取相對應位址的資料。若連線無誤且遠端電腦⑽運 作正常’貝U如步,驟604、605所示,會將所讀取的資料透 過圖5中之虛線路徑儲存在緩衝記憶體的中,如路徑⑤, 此時狀態暫存器64中並會同時儲存有緩衝記憶體69的狀 態0 20 、若因為網路連線錯誤,或是遠端電腦2〇〇故障等 、使得處理器2無法自遠端電腦2〇〇中順利讀取資料 Μ _所錯誤暫存器65中即會儲存有表 狀心的資汛,在此同時,完成自遠端電腦2〇〇 讀取資料的處理器2,由於執行到細指令,因此會自 回復到正常模式下,如步驟,。Bytes, or multiples of 512 Bytes (e.g. 1024, 2048 ...). In order to enable the processor 2 in normal mode and system management mode 11 1222291 II: The same 1/0 tick for control signal and data transmission, so Xiongyi 67 '68 to switch the data and address path, this In the embodiment, the multiplexer 67 is responsible for the switching of the read / write buffer memory, and the multiplexer 68 is responsible for the switch of the buffer memory address path. Μ 10a Xi Gongjie 66, 67 疋 are controlled by the decoder '62, when the processor ^ in normal mode, it is passed through the solid line arrow in Figure 3 ι / 〇 she passes "; when the decoder 62 has been connected ㈣I / G signal and send system management—when the heart number is sent to processor 2, control multiplexers 67 and 68 to switch the path name at the same time, so that the control signal, data money, and address signal can be ㈣ dotted arrows in Figure 4 To transfer to each of the registers 63 ~ 66 and multiplexing records 67 68. Therefore, in normal mode, the address selection of the buffer memory and the read / write of the data are through a path, and Under the system management finger, it is through another path, the two do not conflict with each other. 15 20 Read Figure 5 and Figure 6. When the near-end computer 100 is powered on, it will be loaded into the read-only memory 3 first. BI0S, and perform a self-boot test (P0ST). After the self-boot test is correct, BIqS will control the processor and send a read request to find the boot program. Under normal circumstances, 疋 through the IDE Rank 300 to find the boot process in the hard drive. At this point, processor 2 is still normal. In the formula, it is shown as path ① in Figure 5. In this embodiment, although there is no physical hard disk, the function of the simulator is to simulate a physical hard disk, in other words, because the simulator 6 is converged through the IDE Row 300 is coupled to processor 2, so the read request sent by processor 2 will be transmitted to simulator 6. 12 1222291 5 10 15 As shown in step 601, because processor 2 "thinks" the physical hard disk It exists in the near-end computer 100, so the read request issued through the IDE bus 300 also includes the address and related information of the desired magnetic sector (512 bytes) and so on. Next, as shown in step 602 and path ②, after the decoder 62 receives this master request, in other words, it interrupts the read request of the processor 2 and further generates a system management interrupt signal. The processor 2 is brought into a system management mode, and the processor 2 is informed of the address of the data to be read. If step 603 and paths ③ and ④, when the processor 2 enters the system management mode, it will execute the SMM code and try to obtain the corresponding address data from β in the remote computer. If the connection is correct and the remote computer is working properly, as shown in steps 604 and 605, the read data will be stored in the buffer memory through the dashed path in Figure 5, such as path ⑤, At this time, the state register 64 also stores the state 0 of the buffer memory 69 at the same time. If the network connection is wrong or the remote computer 200 is faulty, etc., the processor 2 cannot be sent from the remote computer. The data was successfully read in 2000. The error register 65 will be stored in the buffer memory. At the same time, the processor 2 that reads data from the remote computer 2000 is completed. To the fine instructions, so it will return to normal mode, such as steps.

能漸二ί ^路徑⑥與步驟_所示,解碼器62會依據狀 2 ^ 64、錯誤暫存器65,以及計數暫存器66等狀態, 回傳一中斷要求(IRQ)至已回復到正常模式下的處理器 13 1222291 5 2’因此對於BIOS而言,即已認為完成讀取的動作。如此, 對一個個磁區進行讀取,則能順利地載入作業系統,以及 其它應用程式,故對於近端電腦10〇而言,雖其自身並不 具備有實體硬碟,’然由於模擬器6之作用,則 電腦200中之資料在近端電腦1〇〇上執行。 ^ 另一方面,若當處理器2於正常模式下,將資料在主 6己憶體4中計异、處理完畢,欲寫入「硬碟」中時,是採 直接記憶體存取(DMA)方式,以一 DMA控制器(圖·"未^ 將此資料送至模擬器6。 10 15 此時真正的資料傳送動作,是由模擬器6送出一系统 管理中斷(SMI)訊號,使得處理器2執行Smm程式碼將此 資料由主記憶體4中透過網路介面卡i直接寫人遠端電腦 200中,至於模擬器6本身則擔任使得D M A控制器能夠正 常作動之標的,以及透過暫存器63〜66回報資料傳送動 作結果之用途,本身並不直接執行資料傳送之動作。如 此,對於DMA控制器本身和使用DMA資料傳送方式之作As shown in the path ⑥ and step _, the decoder 62 will return an interrupt request (IRQ) according to the status of the state 2 ^ 64, the error register 65, and the count register 66. The processor 13 1222291 5 2 'in the normal mode is therefore considered to have completed the reading action by the BIOS. In this way, reading one magnetic zone can smoothly load the operating system and other applications. Therefore, for the near-end computer 10, although it does not have a physical hard disk itself, Device 6, the data in computer 200 is executed on the near-end computer 100. ^ On the other hand, if the processor 2 is in normal mode, the data is stored in the main memory 6 and processed, and the data is to be written into the "hard disk". Direct memory access (DMA) is used. ) Method, a DMA controller (fig. &Quot; did not ^ send this data to the simulator 6. 10 15 At this time, the real data transfer action is that the simulator 6 sends a system management interrupt (SMI) signal, so that The processor 2 executes the Smm code and writes this data from the main memory 4 directly to the remote computer 200 through the network interface card i. As for the simulator 6 itself, it is the target for the DMA controller to operate normally. The registers 63 to 66 report the purpose of the data transfer action result, and do not directly perform the data transfer action. Therefore, for the DMA controller itself and the use of the DMA data transfer method

業系統,都不必施以任何修改,即能將遠端電腦2〇〇中之 資料在近端電腦100上予以存取。 20 因此,對於未配備有硬碟之近端 用本發明達到相同於網路電腦的目的 器2的系統管理模式,所以沒有不相容的問題 電腦100,即可以利 ,且由於是利用處理 只要是近 端電腦謂上配備有_匯流排300,都能夠透過近端+ 腦中之模擬器6來執行、開啟遠端電腦細上之作= 系統或應用程式。 μ 14 1222291 歸納上述,本發明遠端資料存取方法及使用該方法之 电細充分地利用了處理器2的功能,並僅利用數個暫存器 就能夠達到資料讀取的目的,更佳的是,由於模擬器6利 用一般電腦皆有配備之IDE匯流排來相連接,因此模擬器 5 6可適用於各式機型的電腦。 惟以上所述者,僅為本發明之較佳實施例而已,當不 旎以此限定本發明實施之範圍,即大凡依本發明申請專利 範圍及發明說明書内容所作之簡單的等效變化與修飾,皆 應仍屬本發明專利涵蓋之範圍内。 1〇 【圖式簡單說明】 圖1是-示意圖,說明美國第6,477,624號專利案所 述之資料映像系統; 圖2是一示意圖,說明運用本發明之一較佳實施例的 系統架構; 15 圖3是一方塊圖,說明該較佳實施例之一模擬器; '圖4是-示意圖,說明主記憶體中作業系統、:動程 式,以及SMM程式碼所佔據的位址; 、土圖5是一示意圖,說明一處理器、該模擬器,以及一 运端電腦間的作動;以及 2〇 圖6是-流程圖,說明該較佳實施例在進行資料讀取 時所進行的步驟。 15 1222291 【圖式之主要元件代表符號說明】 100 近端電腦 63 控制暫存器 200 遠端電腦 64 狀態暫存器 1 網路介面卡 65 錯誤暫存器 2 處理器 66 計數暫存器 3 唯讀記憶體 67 多工器 4 隨機存取記憶體 68 多工器 5 記憶體 69 緩衝記憶體 6 模擬器 601- -608 步驟 61 介面單元 62 解碼器 籲 16The industry system can access the data in the remote computer 2000 on the near-end computer 100 without any modification. 20 Therefore, for the near end that is not equipped with a hard disk, the present invention achieves the same system management mode as the target computer 2 of the network computer, so there is no problem of incompatibility with the computer 100, which is profitable, and because the It is said that the near-end computer is equipped with _bus 300, which can be executed by the near-end + simulator 6 in the brain, and the remote computer works = system or application. μ 14 1222291 To sum up, the remote data access method of the present invention and the electric device using the method make full use of the function of the processor 2 and use only a few registers to achieve the purpose of data reading, which is better. What's more, since the simulator 6 is connected by using an IDE bus provided in a general computer, the simulator 5 can be applied to various types of computers. However, the above are only the preferred embodiments of the present invention, and the scope of implementation of the present invention is not limited in this way, that is, the simple equivalent changes and modifications made according to the scope of the patent application and the content of the invention specification of the present invention , All should still fall within the scope of the invention patent. 1〇 [Schematic description] Figure 1 is a schematic diagram illustrating the data mapping system described in US Patent No. 6,477,624; Figure 2 is a schematic diagram illustrating a system architecture using a preferred embodiment of the present invention; 15 Figure 3 is a block diagram illustrating one of the simulators of the preferred embodiment; 'FIG. 4 is a schematic diagram illustrating the operating system, the operating program, and the address occupied by the SMM code in the main memory; It is a schematic diagram illustrating the operations among a processor, the simulator, and a terminal computer; and FIG. 6 is a flowchart illustrating the steps performed by the preferred embodiment when reading data. 15 1222291 [Description of the main components of the diagram] 100 Local computer 63 Control register 200 Remote computer 64 Status register 1 Network interface card 65 Error register 2 Processor 66 Count register 3 Read memory 67 Multiplexer 4 Random access memory 68 Multiplexer 5 Memory 69 Buffer memory 6 Simulator 601- -608 Step 61 Interface unit 62 Decoder 16

Claims (1)

1222291 拾、申請專利範圍: 1· 一種遠端資料存取方法,b_ 疋由一電腦對一盥今命 之遠端電腦中的資料進耔^㊉ ” $电知相連線 丁 5貝取,該電腦且 存取方法包含下列步驟: 八有處理态’该 接收該處理器欲傳送至一 炎,兮%雨西七、# ^ 健存裝置之讀取要 求,该項取要求並裁有該第_ 貝取要 (address); 子歧置之一位址 中斷(trap)該讀取要求; 中斷該讀取要求後,發送一 該處理器進入-盘一作章系“斷心虎至該處理器,使 由該處理器依據該位址,自該遠端之式, 裝置中讀取相對瘅於弟一儲存 器中;以及位址之資料後儲存在—資料暫存 發送—中斷要求(IRQ)至該處理器,完成讀取 2·如申請專利範圍第1項所述之遠端資# 遢而貝枓存取方法,其中, 该獨立作業模式是-系統管理模式(s Μ Μ)。 3.如申5月專利範圍第i項所述之遠端資料存取方法,其中, "亥獨立作業模式是一線上模擬模式(ICE mode)。 4·如申請專利範圍第3項所述之遠端資料存取方法,其中, ”玄中斷汛號是一系統管理中斷(SMI)。 5.如:請專利範圍第1項所述之遠端資料存取方法,其中, °玄第儲存裳置是硬碟,且該位址是關於該硬碟之一域 區。 6· 一種電腦’與一遠端電腦相連線,該電腦包含·· 17 1222291 一處理器; -記憶體,儲存有複數電腦程式碼,該 是供該處理器在一與一作業夺统I 书包矛王式碼 π条糸珧無關之獨立 所執行;及 卜系杈式下 -模擬器’與該處理器相連接,該模擬器具有: 一解碼器’用以依據該處理器所發出之— 要求,產生-觸發該處理器進入該獨立作業模式: 斷訊號,使該處理器於該獨立作模式下執行該^ 权式碼’並當該處理器自該遠端電腦捉取對應於該許 取要求之資料並回復至一正常模式後’發送一中斷: 求(IRQ)至該處理器,及 一緩衝記憶體,用以暫存該處理器自該遠端電 腦中所捉取的資料。 $ 7. 8· 9· 10 如申請專利範圍第6項所述之電腦,其中,該獨立作業模 式是系統管理模式。 /' 、 钃 如申請專利範圍f 6項所述之電腦,丨中,該獨立作業模 式是線上模擬模式。 μ 、 如申請專利範圍第6項所述之電腦,其中,該模擬器是經 由一標準介面與該處理器相連接。 如申請專利範圍第9項所述之電腦,其中,該標準介面是 ΑΤΑ介面、IDE介面、USB介面、ESDI介面與scsi介面 其中之一。 如申凊專利範圍第6項所述之電腦,其中,該模擬器更具 有與遠解碼器相連接之一控制暫存器、一狀態暫存器、一 18 11 m、::數暫存器,以及二多工器,該等多工器 等多工末璉擇寫入該緩衝記憶體之資料的路徑,該 的5^一未 來适擇寫入該緩衝記憶體之位址 的路控,使得該處理器 &八u+ 即在该正常模式與該獨立作業模式時 “別由不同路#對該緩衝記憶體進行寫入。 u·—種模擬器,設 盥…“’该電腦具有-處理器、-/、η系處^理為相連拉藤、、亡 HH與該處理H·相連接之 η己隐體,该記憶體並健存 無關之獨立料模柄=處m人—與作業系統 你^ 稹式4所執行之電腦程式碼,該電腦並是 ”一遂端電腦相連線,該模擬器包含: 一介面單元,設置該匯流排上; 解馬裔’透過該介面單元與該處理器相連接,該解 T器能依據該處理器所發出之一讀取要求,產生一觸發該 广理益進入該獨立作業模式之中斷訊號,以使該處理器於 4獨立作業模式下執行該等電腦程式石馬,並當該處理器自 1 該遠端電腦讀取對應於該讀取要求之資料後’發送一中斷 要求(IRQ)至該處理器,及 ’、友衝3己憶體’用以⑽存該處理器自該遠端電腦中所 捉取的資料。 13. 如:請專利範圍第12項所述之模擬器,其中,該介面單 兀疋ΑΤΑ ’丨面、IDE介面、USB介面、ESDI介面與SCSI 介面其中之一。 14. 如申請專利範圍第13項所述之模擬器,其中,該緩衝記 憶體之容量大小是512 Bytes。 19 1222291 15.如申請專利範圍第12項所述之模擬器,其中,該模擬器 更具有與該解碼器相連接之一控制暫存器、一狀態暫存 器、一錯誤暫存器、一計數暫存器,以及二多工器,該等 多工器其中之一是用來選擇寫入該緩衝記憶體之資料的 路徑,該等多工器其中另一是用來選擇寫入該緩衝記憶體 之位址的路徑。1222291 Patent and application scope: 1. A remote data access method, b_ 疋 A computer accesses the data in a remote computer, which is now used for life ^^ ”$ 电 知 连线 丁 5 贝 取 , 此The computer and the access method include the following steps: There is a processing state 'The receiver should receive the read request from the processor, and it should be sent to a flammable device. # ^ Read request from the health storage device. _ Address; one of the sub-displacements interrupts the read request; after interrupting the read request, it sends a processor entry-disk one as the system "break the tiger to the processor, According to the address, the processor reads the data in the device relative to the remote memory according to the address, and the address data is stored in —data temporary sending—interrupt request (IRQ) to The processor completes the reading 2. The remote data access method described in item 1 of the scope of patent application, wherein the independent operation mode is a system management mode (sM). 3. The remote data access method as described in item i of the May patent scope, wherein the " Hai independent operation mode is an online simulation mode (ICE mode). 4. The remote data access method as described in item 3 of the scope of patent application, wherein "Xuan interruption flood number is a system management interrupt (SMI). 5. For example, please request the remote device described in item 1 of the patent scope Data access method, in which the storage device is a hard disk, and the address is about a domain of the hard disk. 6. A computer is connected to a remote computer, and the computer contains ... 17 1222291 a processor;-memory, storing a plurality of computer code, which is to be executed by the processor independently of an operation that is independent of a command of the I-style schoolbag spear king code π; and Under the formula-the simulator is connected to the processor, the simulator has: a decoder to generate and trigger the processor to enter the independent operation mode according to the request issued by the processor: The processor executes the weighted code in the independent operation mode and sends an interrupt when the processor captures data corresponding to the permission request from the remote computer and returns to a normal mode: request ( IRQ) to the processor and a buffer memory It is used to temporarily store the data captured by the processor from the remote computer. $ 7. 8 · 9 · 10 The computer as described in item 6 of the patent application scope, wherein the independent operation mode is a system management mode. / '钃 The computer described in item 6 of the scope of patent application, in which the independent operation mode is an online simulation mode. Μ, The computer described in item 6 of the scope of patent application, wherein the simulator is A standard interface is connected to the processor. The computer as described in item 9 of the scope of patent application, wherein the standard interface is one of the ATAA interface, IDE interface, USB interface, ESDI interface and scsi interface. The computer according to item 6, wherein the simulator further includes a control register, a state register, a 18 11 m, :: number register, and two multiplexers connected to the remote decoder. Processors, multiplexers, and other multiplexers choose the path to write data to the buffer memory, and the 5 ^ a future path control to write to the address of the buffer memory makes the processor & Eight u + i.e. in this normal mode with When the independent operation mode "respectively by different paths # writing the buffer memory. u · —An emulator, let ’s say, “The computer has a processor,-/, and η systems, which are connected to a rattan, a dead HH, and a hidden η connected to the processing H. The memory Independent and non-existent independent material mold handle = person m — the computer code executed by the operating system you ^ formula 4, the computer is not a "connecting computer connection line, the simulator contains: an interface The unit is set on the bus; the horse is connected to the processor through the interface unit, and the decoder can generate a trigger for the Guangli to enter the independence according to a reading request issued by the processor. An interrupt signal in the operating mode, so that the processor executes the computer programs in four independent operating modes, and sends a '1 when the processor reads data corresponding to the reading request from 1 remote computer. Interrupt request (IRQ) to the processor, and ', You Chong 3 Memories' are used to store the data captured by the processor from the remote computer. 13. For example, please refer to the simulator described in item 12 of the patent scope, wherein the interface is one of the 疋 AT, the IDE interface, the USB interface, the ESDI interface and the SCSI interface. 14. The simulator according to item 13 of the patent application scope, wherein the capacity of the buffer memory is 512 Bytes. 19 1222291 15. The simulator according to item 12 of the scope of patent application, wherein the simulator further has a control register, a status register, an error register, a Count register and two multiplexers. One of the multiplexers is used to select the path of the data written to the buffer memory, and the other of the multiplexers is used to select the write to the buffer. The path of the memory address. 2020
TW92116107A 2003-06-13 2003-06-13 Remote data accessing method and computer using the method using a simulator to interrupt the read request and issue an interrupt signal to the processor TWI222291B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW92116107A TWI222291B (en) 2003-06-13 2003-06-13 Remote data accessing method and computer using the method using a simulator to interrupt the read request and issue an interrupt signal to the processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW92116107A TWI222291B (en) 2003-06-13 2003-06-13 Remote data accessing method and computer using the method using a simulator to interrupt the read request and issue an interrupt signal to the processor

Publications (2)

Publication Number Publication Date
TWI222291B true TWI222291B (en) 2004-10-11
TW200428815A TW200428815A (en) 2004-12-16

Family

ID=34432978

Family Applications (1)

Application Number Title Priority Date Filing Date
TW92116107A TWI222291B (en) 2003-06-13 2003-06-13 Remote data accessing method and computer using the method using a simulator to interrupt the read request and issue an interrupt signal to the processor

Country Status (1)

Country Link
TW (1) TWI222291B (en)

Also Published As

Publication number Publication date
TW200428815A (en) 2004-12-16

Similar Documents

Publication Publication Date Title
US9384018B2 (en) Virtual intelligent platform management interface for hardware components
TWI421698B (en) Computer program product,method,system of facilitating input/output (i/o) processing of at least one guest processing system
US6078970A (en) System for determining adapter interrupt status where interrupt is sent to host after operating status stored in register is shadowed to host memory
US7870296B2 (en) High availability system and execution state control method
JP2011253339A (en) Information processing device and method for controlling driver execution
US5062042A (en) System for managing data which is accessible by file address or disk address via a disk track map
CN101373448B (en) Computer system with remote management
TW200849089A (en) Controlling instruction execution in a processing environment
CN111988230A (en) Virtual machine communication method, device and system and electronic equipment
CN106844249A (en) RAID storage system and method based on RapidIO bus
CN114417373A (en) Data access method and device for NVMe-oF user mode client
CN110457261A (en) Data access method, device and server
US7281163B2 (en) Management device configured to perform a data dump
WO2022108914A1 (en) Live migrating virtual machines to a target host upon fatal memory errors
CN116541227A (en) Fault diagnosis method and device, storage medium, electronic device and BMC chip
CN103842980A (en) Protocol neutral fabric
CN101006430A (en) Error response by a data processing system and peripheral device
CN110830563A (en) Master-slave architecture server and information reading and writing method thereof
CN116701285A (en) Remote access control apparatus, remote access control method, remote access control device, and computer readable medium
TWI222291B (en) Remote data accessing method and computer using the method using a simulator to interrupt the read request and issue an interrupt signal to the processor
CN116627472A (en) Firmware program upgrading method and server of high-speed peripheral component equipment
US7930445B2 (en) Computer system using remote I/O and I/O data transfer method
CN1282087C (en) Method for accessing remote data and computer using the method
JPH1165898A (en) Maintenance system for electronic computer
CN112667363A (en) Method and device for simulating cloud physical host by using virtual machine based on cloud platform

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees