TWI441478B - 分散式作業系統中外部硬體應用的管理 - Google Patents

分散式作業系統中外部硬體應用的管理 Download PDF

Info

Publication number
TWI441478B
TWI441478B TW097123758A TW97123758A TWI441478B TW I441478 B TWI441478 B TW I441478B TW 097123758 A TW097123758 A TW 097123758A TW 97123758 A TW97123758 A TW 97123758A TW I441478 B TWI441478 B TW I441478B
Authority
TW
Taiwan
Prior art keywords
external hardware
hardware device
request
receiving
operating system
Prior art date
Application number
TW097123758A
Other languages
English (en)
Other versions
TW200908607A (en
Inventor
Jason M Cahill
Titus C Miron
Zachary David Rosenfield
Original Assignee
Microsoft Corp
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 Microsoft Corp filed Critical Microsoft Corp
Publication of TW200908607A publication Critical patent/TW200908607A/zh
Application granted granted Critical
Publication of TWI441478B publication Critical patent/TWI441478B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/102Program control for peripheral devices where the programme performs an interfacing function, e.g. device driver
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/17Interprocessor communication using an input/output type connection, e.g. channel, I/O port
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/40Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass for recovering from a failure of a protocol instance or entity, e.g. service redundancy protocols, protocol state redundancy or protocol service redirection

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer And Data Communications (AREA)
  • Stored Programmes (AREA)

Description

分散式作業系統中外部硬體應用的管理
本發明係與一分散式作業系統中外部硬體設備之管理有關。
許多電腦網路包括多個電腦之一共享基礎結構以透過一單一網頁式介面提供資源給終端使用者。這些電腦網路典型地包括一分散式作業系統應用(distributed operating system application),以控制一伺服器農場(server farm)作為一單一邏輯單元。該伺服器農場通常包括無國籍的前端伺服器、應用伺服器、以及一資料庫後端,其係用於儲存使用者建立之內容以及該前端伺服器與該應用伺服器之間的設定與連接。分散式作業系統之電腦網路通常亦包括額外網路硬體裝置或設備,例如網域名稱系統伺服器、防火牆、負載平衡器、廣域網路加速器、以及代理伺服器,其被該伺服器農場利用以增加安全性、提供高可得性、或者協助管理網路停止時間(downtime)。
然而,前述額外網路硬體設備在該分散式作業系統方面為去中心化的(亦即其為外部裝置而從該分散式作業系統中無法看見其狀態或配置)。再者,每個網路硬體設備(即使是相同製造商所生產者)可具有特殊設定而必須由網路工程師手動設置。此外,對系統管理員來說,發生於外部硬體設備中可削弱或甚至使該分散式作業系統當機的任何故障是看不見的(該管理員可偵測到一故障已發生,但無 法識別造成該故障的特定外部硬體設備或者判定該故障之原因)。因此,派遣網路工程師識別並改正該外部設備中發生的問題時常會浪費時間及資源。由於這些考量及其他因素,故提出本發明之各種實施例。
提供本發明內容以藉由一簡化形式介紹一概念選擇,其將於以下實施方式中加以進一步描述。此發明內容並無意去識別該申請專利範圍之關鍵特徵或本質特徵,且無意作為判定該申請專利範圍的一輔助。
提供實施例以於一電腦網路中從一分散式作業系統介面來管理外部硬體設備,其使用一驅動程式模型以與該外部硬體設備有關之裝置驅動程式通信。在一實施例中,在該電腦網路中管理一外部硬體設備的一請求可於一分散式網頁式作業系統介面中加以接收。該驅動程式模型可被利用以從該介面來管理該外部硬體設備之配置設定。該設定可包括管理網域名稱改變、防火牆設定、代理設定等等。在另一實施例中,該驅動程式模型可被利用以於該分散式作業系統介面所起始之一網路配置操作期間中管理外部硬體設備之設定。
該些習知技藝人士可由閱讀以下實施方式並回顧該相關圖示而明瞭這些及其他特徵及優點。應瞭解前述發明內容以及下文實施方式均僅為說明性質且非限制請求項所述之發明。
提供實施例以於一電腦網路中從一分散式作業系統管理外部硬體設備,其使用一驅動程式模型以與該外部硬體設備有關之裝置驅動程式通信。在一實施例中,在該電腦網路中管理一外部硬體設備的一請求可於一分散式網路式作業系統介面中加以接收。可選擇一驅動程式模型,其係用於連接一裝置驅動程式以供管理該外部硬體設備的配置設定。可利用該驅動程式模型以從該介面來管理該外部硬體設備的配置設定。該設定可包括管理網域名稱改變、防火牆設定、代理設定等等。在另一實施例中,可利用該驅動程式模型以於該分散式作業系統介面所起始之一網路配置作業期間中管理外部硬體設備。
現在參照該圖示,其中類似的編號表示類似的項目,現在將描述各種說明性實施例。第1圖為用以自動標定共享資源之一電腦網路結構100之一網路結構圖。在一實施例中,可使用用於網頁式應用程式之一分散式作業系統(如位於Washinton州Redmond市之MICROSOFT公司所研發之SHAREPOINT服務技術中的作業系統)而配置該電腦網路100中的各種元件。如該些習知技藝人士所知,SHAREPOINT服務技術讓使用者可建立、維護以及呈現一協同環境以分享資訊。使用該技術,一使用者或組織可建立一或多個網站以提供及分享資訊(例如一網頁伺服器或網頁資料夾等等之上的文件)給與該網站有關的其他使用者。應瞭解本文中描述之實施例不應被視為限於SHAREPOINT服務技術,反之源自其他開發者及/或製造商 之其他協同服務技術亦可被利用。該電腦網路100及其元件包括與其他運算裝置、通信裝置、及/或其他系統通信之功能,且無意限於本文中描述之實施例及範例。
如第1圖中所示,該電腦網路100包括但不限於一後端伺服器101、應用伺服器102A與102B、以及前端伺服器(例如網頁伺服器)112A、112B與112C。該等前端伺服器與外部硬體設備進行通信,其中外部硬體設備包括一網域名稱系統(domain name system,“DNS”)伺服器114、一網路負載平衡器116、以及一代理伺服器(即防火牆)118。將瞭解依據各種實施例,其他外部硬體設備亦可被整合至該網路100中,其包括一目錄伺服器以供儲存目錄(例如一全球描述與探索及整合目錄(Universal Description,Discovery and Integration directory,“UDDI”directory)或一輕量目錄存取協定目錄(Lightweight Directory Access Protocol directory,“LDAP”directory))或者是ACTIVE DIRECTOR服務(源自Washinton州Redmond市之MICROSOFT公司)。可被整合至該網路100中的其他外部硬體設備可包括一郵件伺服器(例如一簡單郵件傳輸協定(Simple Mail Transfer Protocol,“SMTP”)伺服器)。在一實施例中,該後端伺服器101、該應用伺服器102A及102B以及該前端伺服器112A、112B及112C可被配置為利用SHAREPOINT服務技術以建立用於分享資訊之一協同環境的一分散式作業系統。特言之,依據一實施例,該應用伺服器102A及102B可被配置以執行整合WINDOWS SHAREPOINT SERVICE技術的WINDOWS SERVER作業系統(源自Washinton州Redmond市之MICROSOFT公司)。然而應瞭解源自其他製造商的作業系統亦可被利用以實施本文中討論之技術特徵的各種態樣。
該後端伺服器101係透過一防火牆110與該應用伺服器102A與102B以及該前端伺服器112A、112B與112C通信。依據一實施例,該後端伺服器101可包含一結構化詢問語言資料庫(structured query language database,“SQL”database),其儲存客戶端資料、設定、以及在該網路100中介於該前端伺服器112A、112B與112C以及該應用伺服器102A與102B之間的連接。
該應用伺服器102A與102B係透過一防火牆110與該後端伺服器101以及與該前端伺服器112A、112B與112C通信。一般而言,該應用伺服器102A與102B可被用於執行搜尋索引作業以及通信自一活動目錄之資訊以供揭露於一網站中(由該前端伺服器112A、112B與112C所主持)。該應用伺服器102A與102B可包括(但不限於)網路管理應用以及驅動程式模型104A與104B(以下稱為網路管理應用104A與104B)。
依據一實施例,該等網路管理應用104A與104B可包括與該外部硬體裝置114、116及118有關之驅動程式模型。舉例來說,一DNS驅動程式模型可與該DNS伺服器114有關而一負載平衡器驅動程式模型可與該網路負載平衡器116有關。該驅動程式模型可被一系統管理員用於與 廠商供應之裝置驅動程式130A、130B與130C(可被安裝於該前端伺服器112A、112B與112C中)通信並配置其中之設定。該驅動程式模型可從該網路管理應用104A與104B所建立之一使用者介面加以選擇。特言之,該網路管理應用104A與104B可被用於建立一中央管理網站,其包含一硬體設備超連結(可供一網路管理員選擇以存取與一外部硬體設備有關的一驅動程式模型)。該網路管理應用104A與104B亦可被用於利用該驅動程式模型以從該中央管理網站利用該外部硬體設備114、116與118執行一網路配置作業,例如增加或刪除該網路100中的一前端伺服器。該網路管理應用104A與104B亦可被用於利用該驅動程式模型以執行一系統狀態檢查以從該中央管理網站取得該外部硬體設備114、116與118的一目前狀態。應瞭解依據一實施例,該驅動程式模型可為普通的且被組態設定成為與具有普通設定之數個裝置驅動程式進行通信並管理其中之設定。或者替代地,該驅動程式模型可為廠商特製的且僅被用於與源自一廠商之一特定裝置驅動程式進行通信並管理其中之設定。
依據一實施例,該裝置驅動程式130A、130B及130C可利用一組應用程式介面(application program interface,“API”)(例如該前端伺服器112A、112B及112C上的該等API 125A、125B及125C)以於該網路100中與用於該外部硬體設備裝置驅動程式130A、130B及130C的驅動程式模型進行通信。特言之,該分散式作業系統中該等API的一 可延伸列表可與一外部硬體設備廠商分享,因而一裝置驅動程式可被開發以於該網路管理應用104A及104B所建立之使用者介面中揭露驅動程式設定以使用該驅動程式模型管理外部硬體設備。該網路管理應用104A及104B在該網路100中管理外部硬體設備的功能將參照第3-5圖於下文進一步描述。
該前端伺服器112A、112B及112C透過該防火牆110與該後端伺服器101及該應用伺服器1O2A與120B通信。該網頁前端伺服器112A、112B及112C亦與該外部硬體設備114、116及118(即該DNS伺服器114、該網路負載平衡器116與該代理伺服器118)通信。該前端伺服器112A、112B及112C可包括(但不限於)該等API 125A、125B與12C以及該裝置驅動程式130A、130B與130C。
該DNS伺服器114係與該等前端伺服器112A、112B及112C通信,且可被用於將網域名稱(例如www.ITweb.com)轉譯為IP位址(例如198.105.232.4)。該網路負載平衡器116亦與該前端伺服器112A、112B及112C通信,且可被配置為在多個伺服器上載入平衡網路流量並自動重新分配流量至作業伺服器。該代理伺服器118亦與該前端伺服器112A、112B及112C通信,且可被配置為一防火牆以過濾來自網路客戶端電腦(未顯示)的請求。
示範作業環境
現在參照第2圖,以下討論係用於提供可於其中實施本發明實施例之一適用運算環境的一簡述、一般描述。雖 然將以結合在一個人電腦上之一作業系統上運行之程式模組所執行之程式模組的一般內容中描述本發明,但該些習知技藝人士將瞭解本發明亦可結合其他類型之電腦系統及程式模組而加以實施。
一般而言,程式模組包括常式、程式、元件、資料結構以及其他結構類型,其執行特定任務或執行特定抽象資料類型。再者,該些習知技藝人士將瞭解本發明可利用其他電腦系統配置加以實施,其包括手持裝置、多處理器系統、微處理器式或者可程式化之消費性電子、微電腦、大型主機電腦等等。本發明亦可被實施於分散式運算環境中,在此任務係由透過一通信網路之遠端處理裝置所執行。在一分散式運算環境中,程式模組可位於區域及遠端記憶體儲存裝置兩者之中。
現在參照第2圖,將說明本發明之實施例的一說明性作業環境。如第2圖中所示,該應用伺服器102A包含一伺服器電腦,其可包括可執行一或多個應用程式的一一般目的桌上型、筆記型、手持、平板或者其他類型之電腦。該應用伺服器102A包括至少一中央處理單元8(“CPU”)、一系統記憶體12(包括一隨機存取記憶體18(“RAM”)以及一唯讀記憶體(“ROM”)20)以及一系統匯流排10(連接該記憶體至該CPU 8)。一基本輸入/輸出系統(含有基本常式,基本常式在例如啟動時協助於該電腦中的元件間傳輸資訊)被儲存於該ROM 20中。
該應用伺服器102A更包括一大容量儲存裝置14,以 供儲存一作業系統32以及該網路管理應用104A。依據各種實施例,該作業系統32可包含納入WINDOWS SHAREPOINT SERVICE技術的WINDOWS SERVER作業系統。該大容量儲存裝置14透過連接至該匯流排10的一大容量儲存控制器(未顯示)而被連接至該CPU 8。該大容量儲存裝置14以及其相關電腦可讀取媒體對該共享資源入口110提供非依電性儲存。雖然本文中包含之電腦可讀取媒體的描述係指一大容量儲存裝置例如一硬碟或CD-ROM裝置,但該些習知技藝人士應瞭解電腦可讀取媒體可為該應用伺服器102A可存取或利用的任何可用媒體。
舉例來說(且不受限),電腦可讀取媒體可包含電腦儲存媒體及通信媒體。電腦儲存媒體包括以任何方法或技術實施之依電性及非依電性、可移除及不可移除媒體,以供儲存資訊(如電腦可讀取指令、資料結構、程式模組或其他資料)。電腦儲存媒體包括(但不限於)RAM、ROM、EPROM、EEPROM、快閃記憶體或其他固態記憶體技術、CD-ROM、數位影音光碟(“DVD”)或其他光儲存、磁匣、磁帶、磁碟儲存或其他磁性儲存裝置、或者任何其他可被用於儲存所需資訊且可被該應用伺服器102A存取之媒體。
依據本發明之各種實施例,該應用伺服器102A可運作於一網路環境,該網路環境透過一網路4(例如一區域網路或一廣域網路(例如網際網路))使用通往遠端電腦的邏輯連接。該應用伺服器102A可透過連接至該匯流排10的一網路介面單元16而連接至該網路4。
應瞭解該網路介面單元16亦可被用於連接至其他類型的網路以及遠端運算系統。該應用伺服器102A亦可包括一輸入/輸出控制器22,以供接收及處理源自數種輸入類型(如一鍵盤、滑鼠、筆、觸控筆、手指及/或其他方式)的輸入。類似地,一輸入/輸出控制器22可提供輸出至一顯示器、一印表機或其他類型的輸出裝置。額外地,一觸控螢幕可作為一輸入以及一輸出機制。
如前所述,數個程式模組及資料檔案可被儲存於該應用伺服器102A之大容量儲存裝置14以及RAM 18中,包括適於控制一網路化個人電腦之操作的一作業系統32,例如源自Washinton州Redmond市之MICROSOFT公司的WINDOWS SERVER作業系統。該大容量儲存裝置14及RAM 18亦可儲存一或多個程式模組。特言之,該大容量儲存裝置14及該RAM 18可儲存該網路管理應用程式104A。
第3圖為一流程圖,其說明在一電腦網路中從一分散式作業系統介面管理外部硬體設備的一常式300。第1及2圖的元件被參照於第3圖之描述中,但該實施例並非被如此受限。當閱讀本文中表示之常式的討論時,應瞭解本發明之各種實施例的邏輯操作被實施為(1)電腦實施之動作的一順序或在一運算系統上執行之程式模組及/或(2)該運算系統中的互連機器邏輯電路或電路模組。該實施為依據實施本發明之運算系統的效能需求的一選擇問題。因此,第3至4圖說明之邏輯操作以及本文中描述之本發明 實施例的建立係泛指操作、結構裝置、動作或模組。一習知技藝人士將瞭解這些操作、結構裝置、動作及模組可被實施於軟體、韌體、特別目的之數位邏輯以及前述之任何結合中,而不會偏離本文中提出之請求項所敘述之本發明的精神及範圍。
該常式300開始於操作305,在此該應用伺服器102A或102B上執行之網路管理應用104A或104B之任一者(以下稱為該網路管理應用104A及應用伺服器102A)係接收一請求,以於該網路100中管理一外部硬體設備。特言之,一系統管理員可存取該網路管理應用104A建立之一網頁式使用者介面並選擇一全球資源定位符(uniform resource locator,“URL”)以供管理外部硬體設備的驅動程式設定。用於管理外部硬體設備之一說明性使用者介面被顯示於第5圖中且將於下文更詳細地加以討論。
從操作305起,一常式300繼續進行至操作310,其中該網路管理應用104A在該使用者介面中接收一驅動程式模型的一選擇。在一實施例中,該驅動程式模型之選擇可由選擇一URL(對應至該待配置外部硬體設備裝置驅動程式)所建立。舉例來說,一系統管理員於選擇用於管理外部硬體設備之一URL後可被呈現一網頁來列出待配置之硬體設備類型,而隨後選擇一URL(對應於管理一負載平衡器)。如前所述,該驅動程式模型可為與數種外部硬體設備裝置驅動程式相容的一一般驅動程式模型,或者該驅動程式模型可為與一廠商之一特定裝置驅動程式相容的一廠商 特定驅動程式模型。
從操作310起,該常式300繼續進行至操作315,其中該網路管理應用104A利用該選擇的驅動程式模型以配置該對應外部硬體設備的設定。特言之,該網路管理應用104A於接收該選擇的驅動程式模型之後可開啟一配置精靈以供配置與一外部硬體設備有關的各種設定。
從操作315起,該常式300繼續進行至操作320,其中該網路管理應用104A接收有關該網路100中一外部硬體設備之一目前狀態的一請求。特言之,一系統管理員可從對應至一驅動程式模型之網路管理應用104A所建立之使用者介面中選擇一URL以取得該網路100中一外部硬體設備的一目前狀態。
從操作320起,該常式300繼續進行至操作325,其中該網路管理應用104A利用該選擇的裝置驅動程式以與一對應的外部硬體設備對目前狀態資訊進行通信。舉例來說,對於該網路100中一前端伺服器上的一網站的請求若是出乎意料之外地傳回一錯誤訊息,該系統管理員可選擇一URL,用於該網路100中一DNS伺服器的裝置狀態。該常式300隨後結束。
現在移至第4圖,將描述依據一替代實施例而用於在一電腦網路中從一分散式作業系統介面來管理外部硬體設備的一常式400。該常式400開始於操作405,其中該網路管理應用104A於該使用者介面中接收一請求以執行一網路配置操作。舉例來說,一系統管理員可於該使用者介面 中選擇一URL,以增加一前端伺服器至該網路100中的分散式作業系統。
從操作405開始,該常式400繼續進行至操作410,其中該網路管理應用104A使用一驅動程式模型以與一外部硬體設備通信,以執行一任務(用於執行該請求之網路配置操作)。特言之,該網路管理應用104A可被配置以自動判定該外部硬體設備於執行該請求之網路配置操作時需要被執行的任務,並且自動利用該驅動程式模型以傳遞該適當設定至受影響的外部硬體設備裝置驅動程式。舉例來說,若一前端伺服器被新增至一網路,該網路管理應用104A可判定用於該網路負載平衡器116之設定需要被調整以處理源自該新伺服器的增加流量。在做成該判定後,該網路管理應用104A隨後可自動對該網路負載平衡器116利用該驅動程式模型以與該網路負載平衡器裝置驅動程式140通信並指示該裝置驅動程式調整該必要設定。該常式400隨後結束。
現在移至第5圖,將描述一分散式作業系統之一說明性使用者介面的一方塊圖,其可被用於在一電腦網路中管理外部硬體設備。一使用者介面500包含一外部管理網頁,其包括用於管理硬體設備的一URL 502以及用於網路配置的URL 504。於選擇該URL 502時,一使用者(例如一系統管理員)被帶往一網頁520,其包括用於管理一負載平衡的一URL 506、用於管理一代理伺服器之一URL 508以及用於管理一DNS伺服器的一URL 510。當選擇該 URL 504時,一使用者被帶往一網頁530,其包括用於增加一前端伺服器之一URL 512、用於移除一前端伺服器之一URL514、以及用於請求一網路之一系統狀態的一URL 516。
雖然已結合各種說明性實施例描述本發明,該些習知技藝人士將瞭解可於以下請求項之範圍中做出許多修改。因此,並無意藉由前文所述於任何方面限制本發明之範圍,反之其應完全地藉由參照以下之請求項而加以判定。
4‧‧‧網路
8‧‧‧中央處理單元
10‧‧‧系統匯流排
12‧‧‧系統記憶體
14‧‧‧大容量儲存裝置
16‧‧‧網路介面單元
18‧‧‧隨機存取記憶體(RAM)
20‧‧‧唯讀記憶體(ROM)
22‧‧‧輸入/輸出控制器
32‧‧‧作業系統
100‧‧‧電腦網路結構
101‧‧‧後端伺服器
102A,102B‧‧‧應用伺服器
104A,104B‧‧‧驅動程式模型(網路管理應用)
110‧‧‧防火牆
112A,112B,112C‧‧‧網頁伺服器
114‧‧‧網域名稱伺服器
116‧‧‧網路負載平衡器
118‧‧‧代理伺服器
125A,125B,125C‧‧‧應用程式介面(API)
130A,130B,130C‧‧‧裝置驅動程式
500‧‧‧使用者介面
502,504,506,508,510,512,514,516‧‧‧全球資源定位符 (URL)
520,530‧‧‧網頁
第1圖為依據各種實施例之一系統的一網路結構圖,該系統被用於在一電腦網路中從一分散式作業系統管理外部硬體設備。
第2圖為一方塊圖,其說明用於實施文中描述之各種實施例的一運算環境。
第3圖為依據一實施例的一流程圖,其說明用於在一電腦網路中從一分散式作業系統介面管理外部硬體設備的一常式。
第4圖為依據一替代實施例的一流程圖,其說明用於在一電腦網路中從一分散式作業系統介面管理外部硬體設備的一常式。
第5圖為依據一實施例而用於一分散式作業系統之一說明性使用者介面的一方塊圖,該分散式作業系統可被用於在一電腦網路中管理外部硬體設備。
100‧‧‧電腦網路結構
101‧‧‧後端伺服器
102A,102B‧‧‧應用伺服器
104A,104B‧‧‧驅動程式模型(網路管理應用)
110‧‧‧防火牆
112A,112B,112C‧‧‧網頁伺服器
114‧‧‧網域名稱伺服器
118‧‧‧代理伺服器
116‧‧‧網路負載平衡器
125A,125B,125C‧‧‧應用程式介面(API)
130A,130B,130C‧‧‧裝置驅動程式

Claims (16)

  1. 一種在一電腦網路中從一分散式作業系統介面管理外部硬體設備的方法,包含以下步驟:在該分散式作業系統介面中接收一請求以管理該電腦網路中的一外部硬體設備;在該分散式作業系統介面中接收與該外部硬體設備有關之一驅動程式模型的一選擇;自動決定該外部硬體設備之任務,以實行該請求而管理該外部硬體設備,該請求包含在該電腦網路中與該內部硬體設備有關之一配置操作,該等任務包含配置該外部硬體設備之設定,以促進與該內部硬體設備有關之該配置操作;及利用該選擇之驅動程式模型以從該分散式作業系統介面來配置該外部硬體設備的該等設定,其中利用該選擇之驅動程式模型以配置該外部硬體設備的該等設定之步驟包含以下步驟:傳達該等設定至該外部硬體設備所用的至少一個裝置驅動程式;及指示該至少一個裝置驅動程式調整該等設定,以促進與該內部硬體設備有關之該配置操作;其中在該分散式作業系統介面中接收一請求以在該電腦網路中管理一外部硬體設備之步驟包含在一網頁式介面中接收一請求之步驟;其中在一網頁式介面中接收一請求之步驟包含 接收一全球資源定位符(URL)以供管理複數個外部硬體設備之步驟。
  2. 如請求項第1項所述之方法,更包含以下步驟:從該分散式作業系統介面接收該外部硬體設備之目前狀態的一請求;及利用該選擇之驅動程式模型以與該外部硬體設備對目前狀態資訊進行通信,以回應該請求。
  3. 如請求項第1項所述之方法,其中在該分散式作業系統介面中接收一請求以在該電腦網路中管理一外部硬體設備之步驟包含在該分散式作業系統介面中接收一請求以管理至少以下一者之步驟:一代理伺服器、一負載平衡器、或者一網域名稱系統(DNS)伺服器。
  4. 如請求項第1項所述之方法,其中在該分散式作業系統介面中接收與該外部硬體設備有關之一驅動程式模型的一選擇之步驟包含:接收一一般驅動程式模型之一選擇,其中該一般驅動程式模型利用一組應用程式介面(API)以與用於管理複數個外部硬體設備之複數個裝置驅動程式進行通信。
  5. 如請求項第1項所述之方法,其中在該分散式作業系統介面中接收與該外部硬體設備有關之一驅動程式模型 的一選擇之步驟包含:接收一特定廠商驅動程式模型的一選擇,其中該特定廠商驅動程式模型係與用於管理該外部硬體設備之一特定廠商裝置驅動程式進行通信。
  6. 一種在一電腦網路中從一分散式作業系統介面來管理外部硬體設備的系統,包含:一記憶體,用以儲存可執行程式碼;及一處理器,功能性地連接至該記憶體,該處理器負責該程式碼中含有之電腦可執行指令且可用於:在該分散式作業系統介面中接收一請求以於該電腦網路中執行與一內部硬體設備有關之一配置操作;自動決定至少一個外部硬體設備之一任務,以實行該請求而在該電腦網路中執行與該內部硬體設備有關之一配置操作,該任務包含配置該至少一個外部硬體設備之設定,以促進與該內部硬體設備有關之該配置操作;及與該至少一個外部硬體設備通信以執行該任務,以使用與該至少一個外部硬體設備有關之一驅動程式模型而促進該配置操作,其中該處理器在與該至少一個外部硬體裝置通信時,可操作以傳達該等設定至該至少一個外部硬體裝置所用的至少一個裝置驅動程式,其中該等設定可用於執行該任務以促進與該內部硬體設備有關之該配置操作;及 指示該至少一個裝置驅動程式調整該等設定,以促進與該內部硬體設備有關之該配置操作;其中在該分散式作業系統介面中接收一請求以在該電腦網路中管理一外部硬體設備包含在一網頁式介面中接收一請求;其中在一網頁式介面中接收一請求包含接收一全球資源定位符(URL)以供管理複數個外部硬體設備。
  7. 如請求項第6項所述之系統,其中該處理器在該分散式作業系統介面中接收一請求以執行一配置操作時,可操作以接收一請求以排程該配置操作的執行。
  8. 如請求項第6項所述之系統,其中該處理器在該分散式作業系統介面中接收一請求以執行一配置操作時,可操作以接收一請求以將一前端伺服器新增至該電腦網路。
  9. 如請求項第6項所述之系統,其中該處理器在該分散式作業系統介面中接收一請求以執行一配置操作時,可操作以從該電腦網路移除一前端伺服器。
  10. 如請求項第6項所述之系統,其中該處理器在該分散式作業系統介面中接收一請求以執行一配置操作時,可操作以接收一請求以在一網頁式介面中執行一配置操作。
  11. 如請求項第6項所述之系統,其中該處理器在與至少一個外部硬體設備通信以執行一任務時進一步被用於利用一一般驅動程式模型以與至少一個裝置驅動程式通信,其中該至少一個裝置驅動程式係用於管理該至少一個外部硬體設備,其中該任務被用於使用一驅動程式模型而執行該配置操作。
  12. 如請求項第6項所述之系統,其中該處理器在與至少一個外部硬體設備通信以執行一任務時,進一步操作以利用一特定廠商驅動程式模型以與被用於管理該至少一個外部硬體設備的至少一個特定廠商裝置驅動程式通信,其中該任務被用於使用一驅動程式模型而執行該配置操作。
  13. 一種含有電腦可執行指令的電腦可讀取媒體,該等電腦可執行指令於一電腦上執行時將使該電腦執行在一電腦網路中從一分散式作業系統介面管理外部硬體設備的一方法,該方法至少包含:在該分散式作業系統介面中接收一請求以管理該電腦網路中的一外部硬體設備;在該分散式作業系統介面中接收與該外部硬體設備有關之一驅動程式模型的一選擇;自動決定該外部硬體設備之任務,以實行該請求而 管理該外部硬體設備,該請求包含在該電腦網路中與該內部硬體設備有關之一配置操作,該等任務包含配置該外部硬體設備之設定,以促進與該內部硬體設備有關之該配置操作;利用該選擇之驅動程式模型以從該分散式作業系統介面來配置該外部硬體設備的該等設定,其中利用該選擇之驅動程式模型以配置該外部硬體設備的該等設定之步驟包含以下步驟:傳達該等設定至該外部硬體設備的至少一個裝置驅動程式;及指示該至少一個裝置驅動程式調整該等設定,以促進與該內部硬體設備有關之該配置操作;從該分散式作業系統介面接收該外部硬體設備之一目前狀態的一請求;及利用該選擇之驅動程式模型以與該外部硬體設備對目前狀態資訊進行通信,以回應該請求其中在該分散式作業系統介面中接收一請求以在該電腦網路中管理一外部硬體設備之步驟包含在一網頁式介面中接收一請求之步驟;其中在一網頁式介面中接收一請求之步驟包含接收一全球資源定位符(URL)以供管理複數個外部硬體設備之步驟。
  14. 如請求項第13項所述之電腦可讀取媒體,其中在該分散 式作業系統介面中接收一請求以在該電腦網路中管理一外部硬體設備之步驟,包含在該分散式作業系統介面中接收一請求以管理至少以下一者之步驟:一代理伺服器、一負載平衡器、或者一網域名稱系統(DNS)伺服器。
  15. 如請求項第13項所述之電腦可讀取媒體,其中在該分散式作業系統介面中接收與該外部硬體設備有關之一驅動程式模型的一選擇之步驟,包含以下步驟:接收一一般驅動程式模型之一選擇,其中該一般驅動程式模型利用一組應用程式介面(API)以與用於管理複數個外部硬體設備之複數個裝置驅動程式進行通信。
  16. 如請求項第13項所述之電腦可讀取媒體,其中在該分散式作業系統介面中接收與該外部硬體設備有關之一驅動程式模型的一選擇之步驟,包含以下步驟:接收一特定廠商驅動程式模型的一選擇,其中該特定廠商驅動程式模型係與用於管理該外部硬體設備之一特定廠商裝置驅動程式進行通信。
TW097123758A 2007-06-29 2008-06-25 分散式作業系統中外部硬體應用的管理 TWI441478B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US11/771,631 US8060891B2 (en) 2007-06-29 2007-06-29 Management of external hardware appliances in a distributed operating system

Publications (2)

Publication Number Publication Date
TW200908607A TW200908607A (en) 2009-02-16
TWI441478B true TWI441478B (zh) 2014-06-11

Family

ID=40162398

Family Applications (1)

Application Number Title Priority Date Filing Date
TW097123758A TWI441478B (zh) 2007-06-29 2008-06-25 分散式作業系統中外部硬體應用的管理

Country Status (7)

Country Link
US (1) US8060891B2 (zh)
EP (1) EP2176779A4 (zh)
JP (1) JP2010532893A (zh)
KR (1) KR101497167B1 (zh)
CN (1) CN101689169B (zh)
TW (1) TWI441478B (zh)
WO (1) WO2009006058A2 (zh)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4966135B2 (ja) * 2007-08-31 2012-07-04 株式会社東芝 サーバ装置、端末装置、通信制御方法および通信制御プログラム
CA2700866C (en) * 2007-09-26 2016-06-21 Martin Casado Network operating system for managing and securing networks
US8978052B1 (en) 2009-04-29 2015-03-10 Qlogic, Corporation System and methods for inter-driver communication
US8250653B2 (en) * 2009-04-30 2012-08-21 Microsoft Corporation Secure multi-principal web browser
US8266714B2 (en) 2009-08-28 2012-09-11 Microsoft Corporation Access control in a multi-principal browser
US8341268B2 (en) 2009-08-28 2012-12-25 Microsoft Corporation Resource sharing in multi-principal browser
CN101945130B (zh) * 2010-09-15 2012-12-26 中国人民解放军国防科学技术大学 一种基于复合域名的服务阵列负载均衡方法
US9487875B2 (en) 2012-12-27 2016-11-08 Osaka Electro-Communication University Producing electrolyzed liquid
KR102343641B1 (ko) * 2015-03-13 2021-12-24 삼성전자주식회사 시스템 온 칩과 이를 포함하는 장치들
CN105138314B (zh) * 2015-07-08 2019-02-01 Oppo广东移动通信有限公司 一种终端应用软件的通道选择方法及装置
US10805420B2 (en) * 2017-11-29 2020-10-13 Forcepoint Llc Proxy-less wide area network acceleration

Family Cites Families (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01189751A (ja) * 1988-01-25 1989-07-28 Matsushita Electric Ind Co Ltd データ処理システム
JP3042341B2 (ja) * 1994-11-30 2000-05-15 日本電気株式会社 クラスタ結合型マルチプロセッサシステムにおけるローカル入出力制御方法
US6047323A (en) 1995-10-19 2000-04-04 Hewlett-Packard Company Creation and migration of distributed streams in clusters of networked computers
JPH10161823A (ja) * 1996-11-27 1998-06-19 Nec Corp 印刷システム
CA2290484A1 (en) 1997-05-23 1998-11-26 The Trustees Of Columbia University In The City Of New York Method and system for providing multimedia service in an atm communications network
WO2000024205A1 (de) 1998-10-19 2000-04-27 Siemens Aktiengesellschaft Verfahren zur steuerung von netzelementen
US6587874B1 (en) 1999-06-29 2003-07-01 Cisco Technology, Inc. Directory assisted autoinstall of network devices
US6556995B1 (en) * 1999-11-18 2003-04-29 International Business Machines Corporation Method to provide global sign-on for ODBC-based database applications
US6880158B1 (en) * 2000-04-10 2005-04-12 International Business Machines Corporation Network processor services architecture that is platform and operating system independent
US6895438B1 (en) * 2000-09-06 2005-05-17 Paul C. Ulrich Telecommunication-based time-management system and method
US7565422B2 (en) * 2002-01-08 2009-07-21 Bottomline Technologies (De), Inc. Transfer client of a secure system for unattended remote file and message transfer
US7490137B2 (en) * 2002-03-22 2009-02-10 Microsoft Corporation Vector-based sending of web content
US20030221094A1 (en) 2002-04-17 2003-11-27 Avery Pennarun Method and system for configuring a computer
US7213060B2 (en) 2002-04-23 2007-05-01 Canon Kabushiki Kaisha Web based creation of printer instances on a workstation
JP2004102558A (ja) * 2002-09-09 2004-04-02 Murata Mach Ltd サーバ装置
US6847970B2 (en) 2002-09-11 2005-01-25 International Business Machines Corporation Methods and apparatus for managing dependencies in distributed systems
US7140021B2 (en) * 2002-09-13 2006-11-21 Microsoft Corporation Dynamic TCP partitioning
US7136941B2 (en) 2002-12-04 2006-11-14 Microsoft Corporation Print management architecture for computing devices having a set of filters functions wherein the functions are prevented from conflicting with one another
US7263605B2 (en) 2002-12-09 2007-08-28 Intel Corporation Decoupled hardware configuration manager that generates a user interface prior to booting using hardware configuration option data read from plurality of hardware devices
US7184917B2 (en) 2003-02-14 2007-02-27 Advantest America R&D Center, Inc. Method and system for controlling interchangeable components in a modular test system
US20040210623A1 (en) * 2003-03-06 2004-10-21 Aamer Hydrie Virtual network topology generation
US7072807B2 (en) 2003-03-06 2006-07-04 Microsoft Corporation Architecture for distributed computing system and automated design, deployment, and management of distributed applications
US20040230416A1 (en) 2003-05-12 2004-11-18 Microsoft Corporation Bifurcated operating system having a language neutral component
JP2005107707A (ja) 2003-09-29 2005-04-21 Canon Inc 情報処理装置
US8151280B2 (en) 2003-10-27 2012-04-03 Microsoft Corporation Simple and dynamic configuration of network devices
US20050125486A1 (en) 2003-11-20 2005-06-09 Microsoft Corporation Decentralized operating system
US7418701B2 (en) * 2004-03-12 2008-08-26 Fuji Xerox Co., Ltd. Network device and setup method thereof
JP2005327075A (ja) 2004-05-14 2005-11-24 Matsushita Electric Ind Co Ltd ネットワーク構成設定方法、ネットワーク対応ホスト機器、及びネットワーク対応ターゲット機器
JP2006004174A (ja) * 2004-06-17 2006-01-05 Dainippon Printing Co Ltd プロキシサーバ
US7664834B2 (en) 2004-07-09 2010-02-16 Maxsp Corporation Distributed operating system management
JP4726190B2 (ja) * 2004-08-09 2011-07-20 株式会社メガチップス ネットワークカメラ、ddnsサーバおよび映像配信システム
US7496886B2 (en) * 2004-09-30 2009-02-24 Microsoft Corporation Method and system for providing cross project commitments
US20060165040A1 (en) 2004-11-30 2006-07-27 Rathod Yogesh C System, method, computer program products, standards, SOA infrastructure, search algorithm and a business method thereof for AI enabled information communication and computation (ICC) framework (NetAlter) operated by NetAlter Operating System (NOS) in terms of NetAlter Service Browser (NSB) to device alternative to internet and enterprise & social communication framework engrossing universally distributed grid supercomputing and peer to peer framework
JP4548168B2 (ja) * 2005-03-22 2010-09-22 日本電気株式会社 ロードバランス装置、サーバシステム及びそのロードバランス方法
US20060247057A1 (en) * 2005-04-28 2006-11-02 Green Anthony E Logic Interface Engine System and Method
GB2412461B (en) 2005-05-05 2006-03-29 Business Serve Plc Method for the remote configuration of voice over IP telephones and voice over IP telephone adapters
JP4971610B2 (ja) 2005-09-01 2012-07-11 キヤノン株式会社 デバイスドライバを管理するためのプログラムおよび方法と情報処理装置
KR20090111811A (ko) 2006-12-07 2009-10-27 베스테르고르 에스에이 모듈방식의 정수 유니트

Also Published As

Publication number Publication date
US20090007152A1 (en) 2009-01-01
EP2176779A4 (en) 2011-12-21
JP2010532893A (ja) 2010-10-14
WO2009006058A3 (en) 2009-03-05
KR20100035689A (ko) 2010-04-06
CN101689169B (zh) 2013-08-21
WO2009006058A2 (en) 2009-01-08
EP2176779A2 (en) 2010-04-21
US8060891B2 (en) 2011-11-15
CN101689169A (zh) 2010-03-31
KR101497167B1 (ko) 2015-02-27
TW200908607A (en) 2009-02-16

Similar Documents

Publication Publication Date Title
TWI441478B (zh) 分散式作業系統中外部硬體應用的管理
US11687422B2 (en) Server clustering in a computing-on-demand system
JP5211160B2 (ja) コンピュータネットワークのシステムダウンタイムを自動的に管理する方法
US8452853B2 (en) Browser with offline web-application architecture
US9058211B2 (en) Pre-validation in a computing on demand system
US8352579B2 (en) Gateway server system comprising a gateway server for making SOAP/XML-based web services accessible to RPC clients
US20120158806A1 (en) Provisioning network-attached storage
US10574724B2 (en) Automatic discovery of management nodes and generation of CLI using HA module
CN104601666A (zh) 日志服务方法及云平台
US7103889B2 (en) Method, system, and article of manufacture for agent processing
US20080065679A1 (en) Method for rules-based drag and drop processing in a network environment
US10771283B2 (en) Virtual cloud node
JP6205013B1 (ja) アプリケーション利用システム
CN112583891B (zh) 接口文档获取方法、装置和服务器
US11983082B2 (en) Server clustering in a computing-on-demand system
US8271623B2 (en) Performing configuration in a multimachine environment
Lamouchi Flying All Over the Sky with Quarkus and Kubernetes
Hitchcock High Availability
Morgan et al. JBoss Enterprise Application Platform 5 HTTP Connectors Load Balancing Guide
Mignault et al. High Availability

Legal Events

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