專利名稱:在共享計算環(huán)境中提供多個并行的桌面和工作區(qū)的方法和裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計算機和軟件,尤其涉及在共享計算環(huán)境中提供多個單獨的和并行的桌面和工作區(qū)的方法和裝置。
例如,對于大多數(shù)操作系統(tǒng),用戶都共享單一的工作區(qū)。不幸的是,這樣不可能使其工作區(qū)個性化或者保證用戶之間的數(shù)據(jù)的安全。在某些操作系統(tǒng)中,用戶可以將他們的數(shù)據(jù)分成多個“概況”或“帳戶”。這種方案的缺陷之一是,如果一個用戶正在使用計算機而另一個用戶想訪問他們自己的文件,那么,第一個用戶必須要關(guān)閉所有打開的應用以便另一個用戶登錄到該系統(tǒng)和訪問他們的數(shù)據(jù)。因此,將失去第一用戶的應用程序狀態(tài)。除了失去該應用程序狀態(tài)外,由于關(guān)閉原來的用戶狀態(tài)和重建新的用戶狀態(tài)所涉及的時間問題,還給該用戶帶來一些不便。
某些解決方法,比如,Microsoft Outlook Express 5.0版本中所用的“身份管理程序”(Identity Manager),可以使某些用戶數(shù)據(jù)在用戶切換期間被各個用戶所共享,而不會失去所有的應用程序狀態(tài)。然而,身份管理程序只管理用戶數(shù)據(jù)的一個小子集。例如,并沒有為每個用戶都單獨地保存文本文件。再者,也很少有可用的工作區(qū)個性化,并且,對于其他用戶訪問,也不能保證該用戶數(shù)據(jù)的安全。
因此,需要一些供多用戶計算環(huán)境中使用的改進的方法和裝置。這些方法和裝置最好考慮到共享計算環(huán)境中的多個單獨的和并行的桌面和工作區(qū)。
例如,利用一種供多用戶計算環(huán)境登錄用戶界面中使用的方法,可以滿足上述要求以及其他要求。這種方法包括為登錄過程中所驗證的每個用戶都建立一個單獨的桌面線索(desktop thread);建立與各桌面線索有關(guān)的單獨的桌面;和保留一個所建立的桌面線索列表。這樣,幾個用戶就可以同時登錄。在某些實現(xiàn)方式中,該方法還包括建立與各桌面有關(guān)的單獨的用戶環(huán)境,并啟動與各桌面有關(guān)的單獨的用戶外殼(user shell)。該桌面線索列表無需終止與第一桌面有關(guān)的桌面線索就可以有選擇地從第一桌面切換到第二桌面。實際上,在某些實現(xiàn)方式中,該方法包括無需終止相關(guān)的桌面線索,自動地從一個桌面切換到另一個桌面。例如,這可以發(fā)生在配置設(shè)定的用戶休止狀態(tài)時段之后。當用戶注銷時,那么,該方法還包括有選擇地從桌面線索列表中去除該可用桌面線索。
圖2示出了適合于
圖1的計算機系統(tǒng)中使用的一個舉例的登錄屏幕顯示。
圖3是描述一個舉例的用于識別用戶以及建立和保留多個單獨的和并行的桌面或遠程進程的過程的流程圖。
圖4是描述一個舉例的用于在桌面之間或遠程進程之間進行切換的過程的流程圖。
系統(tǒng)存儲器包括只讀存儲器(ROM)24和隨機存儲器(RAM)25。ROM 24中存儲有基本輸入/輸出系統(tǒng)(BIOS)26,該系統(tǒng)含有基本例行程序,用于比如在啟動期間幫助在計算機20中的各單元之間傳送信息。
計算機20還包括一個硬盤驅(qū)動器27,用于對硬盤(未示出)進行讀和寫;一個磁盤驅(qū)動器28,用于對可換磁盤29進行讀和寫;和一個光盤驅(qū)動器30,用于對可換光盤31(比如,CD ROM、DVD ROM或其他光媒體)進行讀或?qū)憽S脖P驅(qū)動器27、磁盤驅(qū)動器28和光盤驅(qū)動器30各自分別通過合適的接口32、33和34與總線23連接。
這些驅(qū)動器及其相關(guān)的計算機可讀的媒體為計算機20提供了計算機可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊以及其他數(shù)據(jù)的非易失性存儲。盡管這里所描述的舉例環(huán)境使用了硬盤、可換磁盤29和可換光盤31,然而,熟練技術(shù)人員應當理解,在舉例的操作環(huán)境中,還可以使用計算機可訪問的其他類型的可存儲數(shù)據(jù)的計算機可讀媒體,比如,盒式磁帶、快閃存儲器卡、數(shù)字視盤、隨機存儲器(RAM)、只讀存儲器(ROM)等。
一些程序模塊可以存儲在硬盤、磁盤29、光盤31、ROM 24或RAM 25中,這些程序模塊包括操作系統(tǒng)35、一個或多個應用程序36、其他程序模塊37和程序數(shù)據(jù)38。用戶可以通過諸如鍵盤40和定點設(shè)備42的輸入設(shè)備向計算機20輸入命令和信息。其他輸入設(shè)備(未示出)可以包括話筒、操縱桿、游戲墊(game pad)、衛(wèi)星碟形天線(satellitedish)、掃描器等。這些輸入設(shè)備以及其他輸入設(shè)備通過與總線23相連的接口46與處理單元21連接。
監(jiān)視器47或其他類型的顯示設(shè)備也通過諸如視頻適配器48的接口與總線23連接。除了監(jiān)視器之外,個人計算機通常還包括其他外圍輸出設(shè)備(未示出),比如揚聲器和打印機。
計算機20可以在采用與一臺或多臺遠程計算機(如遠程計算機50)邏輯連接的連網(wǎng)環(huán)境中進行運行。遠程計算機50可以是另一臺個人計算機、服務器、路由器、網(wǎng)絡PC、對等設(shè)備或其他公用網(wǎng)絡節(jié)點,并且通常包括以上針對計算機20所述的大多數(shù)或所有單元。圖2中所示的邏輯連接包括局域網(wǎng)(LAN)51和廣域網(wǎng)(WAN)52。這種連網(wǎng)環(huán)境常見于辦公室、企業(yè)單位計算機網(wǎng)、內(nèi)部網(wǎng)和因特網(wǎng)。
當應用于LAN連網(wǎng)環(huán)境中時,計算機20通過網(wǎng)絡接口或適配器156與本地網(wǎng)51連接。當應用于WAN連網(wǎng)環(huán)境中時,計算機20通常包括一個調(diào)制解調(diào)器54或其他裝置,用于建立廣域網(wǎng)52(比如因特網(wǎng))上的通信??梢允莾?nèi)置或外接的調(diào)制解調(diào)器54通過接口46與總線23連接。在連網(wǎng)環(huán)境中,針對個人計算機20所述的程序模塊或其部分可以存儲在遠程存儲器存儲設(shè)備中。應當理解,所示網(wǎng)絡連接是示范性的,還可以采用其他方式來建立計算機之間的通信鏈路。
下面參照圖2,圖中示出了適合于識別登錄到計算機20的操作系統(tǒng)的用戶時所用的一個舉例的圖形用戶界面(GUI)顯示。這里,示出了一個登錄屏幕100,它有一個標識登錄屏幕100的第一標題區(qū)102。登錄屏幕100可以占據(jù)顯示器47的滿屏或其部分。如圖所示,第一標題區(qū)102可以包括任何圖形特征(例如,位圖、照片、圖象、文字等)。
登錄屏幕100還包括一個多項用戶登錄區(qū)104,在此,可以為用戶提供可選用戶標識符以及相關(guān)的信息,并允許用戶輸入某些數(shù)據(jù)。本例中,登錄區(qū)104有5個不同的用戶,即Billy、Christopher、Pat、Suzie和William;每個用戶都用一個文字標識符110和/或圖形標識符112來標識。因此,William可以通過選擇文字標識符110和/或圖形標識符112開始登錄到操作系統(tǒng)。如果William有一個設(shè)立過的口令,那么,顯示口令輸入字段114用來接收其口令。一旦William的口令被認可,那么,他就可以登錄。如果William未曾設(shè)立過口令,那么他可在選擇了文字標識符110或圖形標識符112后登錄。登錄屏幕100還可以用來為用戶顯示其他用戶相關(guān)信息116。本例中,用戶相關(guān)信息116標識出Suzie有10則新消息。
本例中,在登錄屏幕100的左側(cè)邊緣處示出了第二標題區(qū)106。這里,第二標題區(qū)106標識出該計算機是“Den Commputer”。此外,還提供了一個可選關(guān)機裝置108,使用戶可以關(guān)掉計算機。
作為例子,登錄屏幕100是對供計算機20的共享計算環(huán)境中的多個單獨的和并行的桌面和工作區(qū)之用的各種方法和裝置進行描述的起始點。如以下所詳述以及圖3-4的流程圖中所示,實現(xiàn)了一種桌面切換方案,供微軟WindowsTMNT或WindowsTM2000使用。不過,熟練技術(shù)人員可以認識到,這種桌面切換方案還可適用于其他操作系統(tǒng)、計算機等。例如,該方案在此可擴充到還包括WinStation切換,其中每個都同樣可包括桌面切換。
這里所提出的舉例的實現(xiàn)方式利用Windows NT中通用的桌面應用程序編程接口(API),為每個通過登錄屏幕100進行交互式登錄的用戶建立單獨的工作區(qū)。利用Windows NT的配置文件(profile),用戶的數(shù)據(jù)可區(qū)別于其他用戶的數(shù)據(jù),并且,根據(jù)用戶的或計算機管理器的偏好,可以保護對其他用戶的數(shù)據(jù)的訪問。利用每個用戶單獨的桌面,多個用戶可以同時登錄計算機。因為這只是桌面切換,因此,可以很快地切換用戶。由于應用程序在桌面的環(huán)境條件中運行并且彼此完全分離,因此,在切換期間不會丟失應用程序狀態(tài)。
如果用戶恰好在沒有保護其工作站的情況下離開計算機,那么,為了保護用戶的登錄會話免受其他用戶的影響,在可由用戶設(shè)置的等待時段過后,操作系統(tǒng)將自動切換回到登錄桌面。登錄桌面可以免受用戶桌面的影響,并且,僅當在利用操作系統(tǒng)中的身份驗證實體證實了用戶后,才可以切換回到用戶桌面。
為此,參照圖3中的流程圖。這里,過程200從計算機顯示登錄屏幕100開始。在步驟202中,用戶提供必要的輸入以便作為用戶身份驗證方案的一部分進行登錄。例如,用戶選擇文字標識符110或圖形標識符112然后在口令輸入字段114中輸入口令。身份驗證過程在操作系統(tǒng)中進行,如判定步驟204所示。如果驗證不成功,那么對應步驟204(否),過程200返回登錄屏幕100。如果驗證成功,那么對應步驟204(是),過程200進至判定步驟206。
在判定步驟206中,判斷步驟204所驗證的用戶是否已登錄。這通過檢查打開的桌面列表(ODL)208來實現(xiàn)。如果經(jīng)步驟206判定所驗證的用戶尚未登錄(否),那么,根據(jù)步驟210,為該用戶建立一個新的桌面線索。然后,在步驟214中,將線索和桌面信息加到目前在ODL 208中所登錄的用戶的列表中。該用戶的線索在步驟216中還可以設(shè)立用戶環(huán)境,并在步驟218中啟動其新建桌面上的用戶外殼。在步驟220中,登錄程序切換到用戶的新桌面222。至此,登錄過程結(jié)束。
返回到判定步驟206,如果對該用戶而言桌面已打開,如ODL 208中的相關(guān)的條目所顯示,那么步驟206(是)使過程200進至步驟224。在步驟224中,切換到現(xiàn)有的桌面線索,隨后,在步驟220中,切換到合適的桌面222。圖3中,有N>1個桌面,用桌面222a-c所表示。
下面參照圖4,圖中的流程圖表示注銷桌面222的過程240。本例中,為用戶提供了三種“注銷”方式。第一種方式在步驟242中進行,在此,用戶有意完全進行注銷。當在步驟242中出現(xiàn)這種注銷事件時,那么,在步驟244中,該桌面被清除,ODL 208被更新,而線索被終止。在步驟244之后,過程240返回到登錄屏幕100。
步驟246中,為用戶提供了進行“注銷”的第二種方式,在此,用戶以人工方式來切換桌面。在注銷前的任何時刻,用戶可以(例如通過用戶輸入)進行一個操作,該操作在不將已發(fā)生注銷的情況通知用戶線索的情況下將其返回到登錄屏幕100。這樣,用戶桌面保持運行,并且在該桌面上已啟動的所有應用程序繼續(xù)運行。不過,用戶無法看到這些應用程序的任何內(nèi)容,這是因為,其桌面實際上已被隱藏。此時,稱桌面被“關(guān)掉”,但它仍是激活的。用戶需要根據(jù)過程200再次登錄才能使激活的桌面“打開”。
步驟248中,示出了用戶可以注銷的第三種方式,在此,在用戶可設(shè)置的休止狀態(tài)時段(例如無鼠標活動或鍵盤輸入)過后,操作系統(tǒng)將以為用戶目前已停止操作計算機,因此它將自動切換回到登錄屏幕100。當他們看似不再使用計算機時,通過保護用戶的桌面,這將有助于改善安全性。對其他用戶而言,這還使他們更容易使用計算機并且不必擔心結(jié)束另一用戶的會話。
此外,還可以通過切換遠程進程比如WinStation而不是切換桌面,在共享計算環(huán)境中提供多個單獨的和并行的環(huán)境。從邏輯上講,WinStation包括了多個桌面。為各用戶建立WinStation并在某個用戶登錄或切換回到登錄屏幕100時切換激活的WinStation可以實現(xiàn)與上述相同的機制。
盡管在附圖中示出了本發(fā)明的各種方法和裝置中的一些優(yōu)選的實施方式,并在以上詳述中描述了這些實施方式,然而,應當理解,本發(fā)明并不局限于所公開的這些舉例的實施方式,在不違背附屬權(quán)利要求書中所陳述和規(guī)定的本發(fā)明的精神的前提下,可以有許多種重新配置、修改和替換。
權(quán)利要求
1.一種供多用戶計算環(huán)境登錄用戶界面中使用的方法,該方法包括為所驗證的每個用戶都建立一個單獨的桌面線索;建立與各桌面線索有關(guān)的單獨的桌面;和保留一個所建立的桌面線索的列表。
2.如權(quán)利要求1所述的方法,還包括建立與各桌面有關(guān)的單獨的用戶環(huán)境。
3.如權(quán)利要求1所述的方法,還包括啟動與各桌面有關(guān)的單獨的用戶外殼(user shell)。
4.如權(quán)利要求1所述的方法,還包括無需終止與第一桌面有關(guān)的桌面線索,有選擇地從第一桌面切換到第二桌面。
5.如權(quán)利要求1所述的方法,還包括無需終止與啟動與各桌面有關(guān)的單獨的用戶外殼的第一桌面相關(guān)的桌面線索,自動地從第一桌面切換到第二桌面。
6.如權(quán)利要求5所述的方法,其中,自動地從第一桌面切換到第二桌面發(fā)生在設(shè)定的用戶休止狀態(tài)時段之后。
7.如權(quán)利要求1所述的方法,還包括當用戶注銷時,有選擇地從桌面線索列表中去除一個桌面線索。
8.一種計算機可讀媒體,具有一些計算機可執(zhí)行指令,用于執(zhí)行以下步驟為所驗證的每個用戶都建立一個單獨的桌面線索;建立與各桌面線索有關(guān)的單獨的桌面;和保留一個所建立的桌面線索的列表。
9.如權(quán)利要求8所述的計算機可讀媒體,還具有一些計算機可執(zhí)行指令,用于執(zhí)行以下步驟建立與各桌面有關(guān)的單獨的用戶環(huán)境。
10.如權(quán)利要求8所述的計算機可讀媒體,還具有一些計算機可執(zhí)行指令,用于執(zhí)行以下步驟啟動與各桌面有關(guān)的單獨的用戶外殼。
11.如權(quán)利要求8所述的計算機可讀媒體,還具有一些計算機可執(zhí)行指令,用于執(zhí)行以下步驟無需終止與第一桌面有關(guān)的桌面線索,有選擇地從第一桌面切換到第二桌面。
12.如權(quán)利要求8所述的計算機可讀媒體,還具有一些計算機可執(zhí)行指令,用于執(zhí)行以下步驟無需終止與啟動與各桌面有關(guān)的單獨的用戶外殼的第一桌面相關(guān)的桌面線索,自動地從第一桌面切換到第二桌面。
13.如權(quán)利要求12所述的計算機可讀媒體,其中,自動地從第一桌面切換到第二桌面發(fā)生在設(shè)定的用戶休止狀態(tài)時段之后。
14.如權(quán)利要求8所述的計算機可讀媒體,還具有一些計算機可執(zhí)行指令,用于執(zhí)行以下步驟當用戶注銷時,有選擇地從桌面線索列表中去除一個桌面線索。
15.一種裝置,包括存儲器,其中存儲有操作系統(tǒng)的至少一部分;一個處理器,它操作上與存儲器連接,并且響應操作系統(tǒng),為登錄過程中所驗證的每個用戶都建立一個單獨的桌面線索,建立與各桌面線索有關(guān)的單獨的桌面,和保留一個所建立的桌面線索的列表。
16.如權(quán)利要求15所述的裝置,其中處理器還通過建立與各桌面有關(guān)的單獨的用戶環(huán)境來響應操作系統(tǒng)。
17.如權(quán)利要求15所述的裝置,其中處理器還通過啟動與各桌面有關(guān)的單獨的用戶外殼來響應操作系統(tǒng)。
18.如權(quán)利要求15所述的裝置,其中處理器還這樣來響應操作系統(tǒng)無需終止與第一桌面有關(guān)的桌面線索,有選擇地從第一桌面切換到第二桌面。
19.如權(quán)利要求15所述的裝置,其中處理器還這樣來響應操作系統(tǒng)無需終止與啟動與各桌面有關(guān)的單獨的用戶外殼的第一桌面相關(guān)的桌面線索,自動地從第一桌面切換到第二桌面。
20.如權(quán)利要求19所述的裝置,其中,自動地從第一桌面切換到第二桌面發(fā)生在設(shè)定的用戶休止狀態(tài)時段之后。
21.如權(quán)利要求15所述的裝置,其中處理器還通過當用戶注銷時有選擇地從桌面線索列表中去除一個桌面線索來響應操作系統(tǒng)。
22.一種供多用戶計算環(huán)境登錄用戶界面中使用的方法,該方法包括為所驗證的每個用戶都建立一個單獨的遠程進程線索;建立與各遠程進程線索有關(guān)的單獨的遠程進程;和保留一個所建立的遠程進程線索的列表。
23.如權(quán)利要求22所述的方法,還包括建立與各遠程進程有關(guān)的單獨的用戶環(huán)境。
24.如權(quán)利要求22所述的方法,還包括啟動與各遠程進程有關(guān)的單獨的用戶外殼。
25.如權(quán)利要求22所述的方法,還包括無需終止與第一遠程進程有關(guān)的遠程進程線索,有選擇地從第一遠程進程切換到第二遠程進程。
26.如權(quán)利要求22所述的方法,還包括無需終止與啟動與各遠程進程有關(guān)的單獨的用戶外殼的第一遠程進程相關(guān)的遠程進程線索,自動地從第一遠程進程切換到第二遠程進程。
27.如權(quán)利要求26所述的方法,其中,自動地從第一遠程進程切換到第二遠程進程發(fā)生在設(shè)定的用戶休止狀態(tài)時段之后。
28.如權(quán)利要求22所述的方法,還包括當用戶注銷時,有選擇地從遠程進程線索列表中去除一個遠程進程線索。
29.一種計算機可讀媒體,具有一些計算機可執(zhí)行指令,用于執(zhí)行以下步驟為所驗證的每個用戶都建立一個單獨的遠程進程線索;建立與各遠程進程線索有關(guān)的單獨的遠程進程;和保留一個所建立的遠程進程線索的列表。
30.如權(quán)利要求29所述的計算機可讀媒體,還具有一些計算機可執(zhí)行指令,用于執(zhí)行以下步驟建立與各遠程進程有關(guān)的單獨的用戶環(huán)境。
31.如權(quán)利要求29所述的計算機可讀媒體,還具有一些計算機可執(zhí)行指令,用于執(zhí)行以下步驟啟動與各遠程進程有關(guān)的單獨的用戶外殼。
32.如權(quán)利要求29所述的計算機可讀媒體,還具有一些計算機可執(zhí)行指令,用于執(zhí)行以下步驟無需終止與第一遠程進程有關(guān)的遠程進程線索,有選擇地從第一遠程進程切換到第二遠程進程。
33.如權(quán)利要求29所述的計算機可讀媒體,還具有一些計算機可執(zhí)行指令,用于執(zhí)行以下步驟無需終止與啟動與各遠程進程有關(guān)的單獨的用戶外殼的第一遠程進程相關(guān)的遠程進程線索,自動地從第一遠程進程切換到第二遠程進程。
34.如權(quán)利要求33所述的計算機可讀媒體,其中,自動地從第一遠程進程切換到第二遠程進程發(fā)生在設(shè)定的用戶休止狀態(tài)時段之后。
35.如權(quán)利要求29所述的計算機可讀媒體,還具有一些計算機可執(zhí)行指令,用于執(zhí)行以下步驟當用戶注銷時,有選擇地從遠程進程線索列表中去除一個遠程進程線索。
36.一種裝置,包括存儲器,其中存儲有操作系統(tǒng)的至少一部分;一個處理器,它操作上與存儲器連接,并且響應操作系統(tǒng),為登錄過程中所驗證的每個用戶都建立一個單獨的遠程進程線索,建立與各遠程進程線索有關(guān)的單獨的遠程進程,和保留一個所建立的遠程進程線索的列表。
37.如權(quán)利要求36所述的裝置,其中處理器還通過建立與各遠程進程有關(guān)的單獨的用戶環(huán)境來響應操作系統(tǒng)。
38.如權(quán)利要求36所述的裝置,其中處理器還通過啟動與各遠程進程有關(guān)的單獨的用戶外殼來響應操作系統(tǒng)。
39.如權(quán)利要求36所述的裝置,其中處理器還這樣來響應操作系統(tǒng)無需終止與第一遠程進程有關(guān)的遠程進程線索,有選擇地從第一遠程進程切換到第二遠程進程。
40.如權(quán)利要求36所述的裝置,其中處理器還這樣來響應操作系統(tǒng)無需終止與啟動與各遠程進程有關(guān)的單獨的用戶外殼的第一遠程進程相關(guān)的遠程進程線索,自動地從第一遠程進程切換到第二遠程進程。
41.如權(quán)利要求40所述的裝置,其中,自動地從第一遠程進程切換到第二遠程進程發(fā)生在設(shè)定的用戶休止狀態(tài)時段之后。
42.如權(quán)利要求36所述的裝置,其中處理器還通過當用戶注銷時有選擇地從遠程進程線索列表中去除一個遠程進程線索來響應操作系統(tǒng)。
全文摘要
本發(fā)明提供了一些供多用戶計算環(huán)境中使用的方法和裝置。這些方法和裝置可以考慮到共享計算環(huán)境中的多個單獨的和并行的桌面和工作區(qū)。一種方法包括:為登錄過程中所驗證的每個用戶都建立一個單獨的桌面線索;建立與各桌面線索有關(guān)的單獨的桌面;和保留一個所建立的桌面線索的列表。這樣,幾個用戶就可以同時登錄。在某些實現(xiàn)方式中,該方法還包括:建立與各桌面有關(guān)的單獨的用戶環(huán)境,并啟動與各桌面有關(guān)的單獨的用戶外殼。該桌面線索列表無需終止與第一桌面有關(guān)的桌面線索就可以有選擇地和/或自動地從第一桌面切換到第二桌面。這些方法和裝置還可用于遠程進程登錄及切換。
文檔編號G06F9/46GK1390326SQ00815798
公開日2003年1月8日 申請日期2000年7月26日 優(yōu)先權(quán)日1999年12月15日
發(fā)明者克里斯托弗·A·伊萬斯, 詹姆皮羅·M·希拉, 維克多·譚, 普雷里特·加格, 戴維·A·馬修, 雷納·芬克, 保羅·S·海利爾 申請人:微軟公司