亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

實現(xiàn)嵌入式系統(tǒng)中不同用戶客戶機間數(shù)據(jù)共享的方法

文檔序號:6595899閱讀:338來源:國知局
專利名稱:實現(xiàn)嵌入式系統(tǒng)中不同用戶客戶機間數(shù)據(jù)共享的方法
技術(shù)領(lǐng)域
本發(fā)明涉及一種嵌入式系統(tǒng)中數(shù)據(jù)共享技術(shù),特別涉及一種實現(xiàn)嵌入式系統(tǒng)中不同用戶客戶機間數(shù)據(jù)共享的方法。
背景技術(shù)
目前,很多嵌入式系統(tǒng)引入了嵌入式數(shù)據(jù)庫。嵌入式數(shù)據(jù)庫的數(shù)據(jù)交換功能使得嵌入式產(chǎn)品在訪問其它電子設(shè)備(如PC、數(shù)據(jù)庫服務(wù)器、通信設(shè)備等)的數(shù)據(jù)時可以暢通無阻,同時,由于其對于平臺的無關(guān)性,可以自由地在嵌入式平臺之間移植。嵌入式數(shù)據(jù)庫能夠滿足嵌入式系統(tǒng)對數(shù)據(jù)處理和數(shù)據(jù)交換等要求,它和嵌入式操作系統(tǒng)有機地結(jié)合在一起,為應(yīng)用開發(fā)人員提供有效的數(shù)據(jù)管理手段。嵌入式數(shù)據(jù)庫已經(jīng)在保險、銀行業(yè)、零售業(yè)、衛(wèi)生保健、運輸業(yè)、政府部門等具體的行業(yè)得到了應(yīng)用,還將逐漸擴展到不同的行業(yè)中。
根據(jù)應(yīng)用劃分,嵌入式數(shù)據(jù)庫可分為用戶客戶機上的用戶數(shù)據(jù)庫和服務(wù)器上的中央數(shù)據(jù)庫,客戶機的用戶數(shù)據(jù)庫中保存的是用戶自身的數(shù)據(jù),中央數(shù)據(jù)庫中保存的主要是公有數(shù)據(jù)。在以計算機為服務(wù)器的嵌入式系統(tǒng)中,中央數(shù)據(jù)庫中還可以保存各用戶的私有數(shù)據(jù)。
目前,用戶客戶機可以將自身用戶數(shù)據(jù)庫中的數(shù)據(jù)上傳給中央數(shù)據(jù)庫,或從中央數(shù)據(jù)庫下載公有數(shù)據(jù),如果中央數(shù)據(jù)庫中保存了用戶的私有數(shù)據(jù),用戶也可以從中央數(shù)據(jù)庫下載自身的私有數(shù)據(jù),實現(xiàn)自身數(shù)據(jù)交換。然而,現(xiàn)有的嵌入式數(shù)據(jù)庫有一個共同的缺陷每個用戶客戶機只能從中央數(shù)據(jù)庫下載或上傳自己的私有數(shù)據(jù)或公有數(shù)據(jù),卻無法訪問其它客戶機的用戶數(shù)據(jù)庫數(shù)據(jù),也就是說,無法實現(xiàn)嵌入式系統(tǒng)中不同客戶機間的數(shù)據(jù)共享。這使得嵌入式數(shù)據(jù)庫在進行數(shù)據(jù)交換時不能發(fā)揮出強大的數(shù)據(jù)共享功能,制約了嵌入式數(shù)據(jù)庫在各個行業(yè)中的擴展應(yīng)用。

發(fā)明內(nèi)容
有鑒于此,本發(fā)明的目的在于提供一種實現(xiàn)嵌入式系統(tǒng)中不同用戶客戶機間數(shù)據(jù)共享的方法,能夠?qū)崿F(xiàn)嵌入式系統(tǒng)中不同客戶機間數(shù)據(jù)共享的方法,嵌入式系統(tǒng)中用戶客戶機之間數(shù)據(jù)共享,對嵌入式系統(tǒng)中的數(shù)據(jù)交換方式提供有效的支持。
為達到上述目的,本發(fā)明的技術(shù)方案具體是這樣實現(xiàn)的一種實現(xiàn)嵌入式系統(tǒng)中不同用戶客戶機間數(shù)據(jù)共享的方法,該方法包括以下步驟1)在嵌入式系統(tǒng)的服務(wù)器中建立包含所有用戶配置信息的配置數(shù)據(jù)庫,并將配置數(shù)據(jù)庫中的用戶信息進行分組;2)用戶客戶機根據(jù)自身需要選擇組并加入;3)用戶客戶機通過服務(wù)器向同組中被訪問用戶發(fā)送請求信任信息,被訪問用戶接受請求后將信任信息添加到配置數(shù)據(jù)庫中,建立信任關(guān)系并通知用戶;4)服務(wù)器根據(jù)被訪問用戶接受的請求信任信息將被訪問用戶數(shù)據(jù)庫的副本返回到被訪問用戶客戶機中;5)用戶客戶機對被訪問用戶客戶機的用戶數(shù)據(jù)庫副本進行訪問;6)訪問結(jié)束,用被訪問用戶的數(shù)據(jù)庫副本更新被訪問用戶客戶機中的數(shù)據(jù)庫。
其中,步驟1)所述的建立配置數(shù)據(jù)庫可以包括建立用戶信息表單、組信息表單、用戶數(shù)據(jù)庫信息表單和信任關(guān)系表單。步驟1)還可以進一步包括在服務(wù)器中設(shè)置一個默認組,在系統(tǒng)添加新用戶或刪除組時,服務(wù)器將該用戶或?qū)⒈粍h除組中的所有用戶加入該默認組。
步驟2)可以進一步包括用戶查詢系統(tǒng)中所有的組信息,通過組描述獲得每個組的特定功能信息。
步驟3)可以進一步包括用戶通過查詢組內(nèi)其他用戶數(shù)據(jù)庫的信息,查詢到將要訪問的用戶數(shù)據(jù)庫。步驟3)還可以進一步包括用戶將自身的庫/表名和訪問權(quán)限發(fā)送給服務(wù)器,服務(wù)器將用戶的訪問權(quán)限返回給用戶。步驟3)還可以進一步包括將用戶請求建立信任時傳入的訪問權(quán)限與其自身庫建立時設(shè)定的訪問權(quán)限做比較,如果用戶請求訪問權(quán)限高于建庫時初始權(quán)限,則用戶的訪問權(quán)限為建庫時初始權(quán)限,否則為用戶請求建立信任時傳入的訪問權(quán)限。
該方法中,同組的非信任用戶可以以只讀方式訪問同組中被訪問數(shù)據(jù)庫中的公有數(shù)據(jù)。
步驟4)可以為服務(wù)器先判斷被訪用戶數(shù)據(jù)庫的副本是否存在,如果不存在,則從配置數(shù)據(jù)庫中讀出密鑰,將該被訪用戶數(shù)據(jù)庫解密,并通知被訪問用戶在被訪問客戶機上建立用戶數(shù)據(jù)庫副本,同時把解密后的數(shù)據(jù)庫副本的訪問權(quán)返回給用戶客戶機,如果數(shù)據(jù)庫副本已經(jīng)存在,則直接將數(shù)據(jù)庫副本的訪問權(quán)返回給用戶客戶機。
該方法還可以在服務(wù)器中進一步為每個用戶數(shù)據(jù)庫設(shè)置一個引用計數(shù),當(dāng)服務(wù)器創(chuàng)建用戶數(shù)據(jù)庫副本時或用戶數(shù)據(jù)庫副本已存在,又有其他用戶要對同一用戶數(shù)據(jù)庫副本進行訪問時,該用戶數(shù)據(jù)庫引用計數(shù)加1;在需要關(guān)閉某用戶數(shù)據(jù)庫時,該用戶數(shù)據(jù)庫的引用計數(shù)減1。
該方法中,如果多個用戶對同一用戶數(shù)據(jù)庫的同一條記錄同時要求操作時,允許由其中一個用戶對該條記錄進行操作,其他用戶延時操作。
該方法在刪除用戶數(shù)據(jù)庫時,如果該用戶數(shù)據(jù)庫正在被其他用戶訪問,則可以由服務(wù)器將該用戶數(shù)據(jù)庫設(shè)置為準(zhǔn)刪除數(shù)據(jù)庫,在服務(wù)器重啟時,服務(wù)器將該準(zhǔn)刪除數(shù)據(jù)庫從配置數(shù)據(jù)庫中刪除,同時刪除用戶客戶機中的用戶數(shù)據(jù)庫。
該方法還可以進一步包括對服務(wù)器和用戶之間傳輸?shù)乃行畔⑦M行加密/解密處理;對用戶數(shù)據(jù)庫和配置數(shù)據(jù)庫中的所有信息進行加密/解密處理;對用戶數(shù)據(jù)庫之間進行數(shù)據(jù)交換的所有數(shù)據(jù)進行加密/解密處理。
由上述方案可見,本發(fā)明的這種實現(xiàn)嵌入式系統(tǒng)中不同客戶機間數(shù)據(jù)共享的方法,通過將用戶分組和組內(nèi)建立信任關(guān)系達到了客戶機之間數(shù)據(jù)共享的目的,對嵌入式系統(tǒng)中的數(shù)據(jù)交換方式提供了有效的支持,同時,發(fā)明由于采用一個數(shù)據(jù)庫副本,易于減輕副本維護工作,并能保證數(shù)據(jù)的正確性。


圖1為本發(fā)明在服務(wù)器中建立的配置數(shù)據(jù)庫的結(jié)構(gòu)示意圖;圖2為本發(fā)明的添加新用戶及新用戶加入組示意圖;圖3為本發(fā)明的建立信任關(guān)系示意圖;圖4為本發(fā)明的客戶機訪問其他用戶數(shù)據(jù)庫的示意圖;圖5為本發(fā)明的關(guān)閉用戶數(shù)據(jù)庫示意圖。
具體實施例方式
為使本發(fā)明的目的、技術(shù)方案和優(yōu)點更加清楚明白,下面結(jié)合實施例和附圖,對本發(fā)明進一步詳細說明。
參見圖1,本發(fā)明在服務(wù)器中建立的配置數(shù)據(jù)庫的示意圖。本發(fā)明實現(xiàn)方法的前提是在服務(wù)器中建立配置數(shù)據(jù)庫101用以記錄用戶和組的信息。初始時在服務(wù)器上保存一個密鑰,用于對傳輸協(xié)議內(nèi)容加密,用戶不可知。配置庫101建好后,首先添加一個默認組(default_group),專門用來回收游離用戶,不具有一般組的特性。然后建立組,將用戶進行分組后添加到各組中,對于每個新建立的組,將其“組內(nèi)可容納的最大用戶數(shù)”設(shè)為0,表示沒有限制,這個參數(shù)可由服務(wù)器的數(shù)據(jù)庫管理員修改。服務(wù)器的數(shù)據(jù)庫管理員是指對中央數(shù)據(jù)庫有操作權(quán)限的用戶,每個系統(tǒng)只能有一個,其可以新建組,刪除組,設(shè)置組內(nèi)可容納的最大用戶數(shù),更改組名,并且擁有主動關(guān)閉服務(wù)器的權(quán)利;其他用戶是普通用戶,是指持有客戶機而需要登錄服務(wù)器的用戶,他們可以創(chuàng)建庫、表,進行一系列的庫、表、記錄操作,可以改變自己所在的組,可以請求與同組的其他用戶機建立信任以訪問他人的數(shù)據(jù)庫。
如圖1所示,服務(wù)器100初始化完畢后,配置數(shù)據(jù)庫101包含了四個表單組信息表102、用戶信息表103、信任關(guān)系表104和用戶數(shù)據(jù)庫信息表105。這四個表單的結(jié)構(gòu)參見表一。

表一圖1中,配置數(shù)據(jù)庫101中各個表單之間的虛線表示它們是通過表中定義的字段來聯(lián)系的。客戶機110之間及它們與服務(wù)器100中的配置數(shù)據(jù)庫101之間的虛線表示當(dāng)前系統(tǒng)尚沒有用戶注冊。
下面以新添一個用戶,其客戶機A訪問其他客戶機用戶數(shù)據(jù)庫的過程為實施例進行說明。本實施例包括以下幾個步驟首先,第一步用戶在客戶機A中建立自己的用戶數(shù)據(jù)庫,其中數(shù)據(jù)庫的配置信息將在用戶登陸服務(wù)器時添入服務(wù)器的配置數(shù)據(jù)庫中。
接著,第二步添加用戶A。參見圖2,添加新用戶及新用戶加入組示意圖。如圖2所示,服務(wù)器200是一個初始化后的服務(wù)器,其建立了配置數(shù)據(jù)庫201。配置數(shù)據(jù)庫201中已建立信任關(guān)系表206、用戶信息表207、用戶數(shù)據(jù)庫信息表208、組信息表209以及組202。組202中建立了默認組204和用戶組203。用戶組203中建立了n個組205。
此時,有一個新用戶——客戶機A210登錄服務(wù)器200,先將其用戶名和登錄密碼存入配置數(shù)據(jù)庫201的用戶信息表207,圖中用箭頭2示意這個過程;同時將用戶A加入默認組204中,圖中用箭頭1示意。設(shè)定剛登錄進服務(wù)器200的用戶A為游離用戶。默認組204對于用戶A來說是不可見的,即用戶A并不知道自己已被加入某一組中,在他看來,自己仍處于游離狀態(tài)。如果此時客戶機A210查詢自己所在的組,服務(wù)器200會返回用戶A不在任何組中。
然后,第三步用戶A將自己添加到組中。參見圖2,添加新用戶及新用戶加入組示意圖。如圖2箭頭3所示,用戶A在用戶組203中查詢,得到目前系統(tǒng)內(nèi)所有的用戶組信息,通過組描述了解每個組的特定功能,從而選擇自己感興趣的組請求加入,本實施例中用戶A選擇組205中的組1。服務(wù)器200首先判斷新選定的組1中的用戶數(shù)是否已達到最大值,如果沒有達到最大值,則接受請求。否則,服務(wù)器200向客戶機A210發(fā)不能加入組信息。如圖2箭頭4所示,一旦服務(wù)器200接受了請求,就會更改用戶信息,將用戶A新選定組1的信息添入用戶信息表207中;同時如圖2箭頭5所示,將用戶A的信息添入配置數(shù)據(jù)庫201的組信息表209。此時客戶機A210再查詢自己所在的組,服務(wù)器200會將組1的組名返回給客戶機A210。
這樣,就可以進入第四步用戶A訪問組1內(nèi)其他用戶數(shù)據(jù)庫。用戶A欲訪問組1內(nèi)其他用戶數(shù)據(jù)庫先要與被訪問用戶數(shù)據(jù)庫建立信任關(guān)系,參見圖3,建立信任關(guān)系示意圖。如圖3箭頭6所示,用戶A加入組1后,查詢組內(nèi)其他用戶的數(shù)據(jù)庫信息,一旦用戶A確定了進行數(shù)據(jù)交換的庫,就請求與此庫的所有者建立信任關(guān)系。請求時,客戶機A把請求訪問的庫/表名,訪問方式、權(quán)限一起發(fā)送給服務(wù)器200。如圖3箭頭7所示,如果對方接受了信任請求,將會把信任信息添加到配置數(shù)據(jù)庫301的信任關(guān)系表306中,同時把用戶A對被訪問用戶數(shù)據(jù)庫的訪問權(quán)限返回給客戶機A??蛻魴CA根據(jù)此權(quán)限就可對被訪問用戶在客戶機中的用戶數(shù)據(jù)庫進行適當(dāng)?shù)牟僮鳌?br> 在確定訪問權(quán)限的過程中,可以采用“最低訪問權(quán)限”方法。該方法將用戶請求建立信任時傳入的訪問方式與請求庫建立時設(shè)定的訪問方式做比較,如果用戶請求訪問權(quán)限高于建庫時初始權(quán)限,則降低用戶的訪問權(quán)限。
由于數(shù)據(jù)庫在創(chuàng)建時就被加密,用戶在獲得訪問權(quán)限之前,服務(wù)器首先判斷該庫的副本是否已經(jīng)存在,如果不存在,則從配置庫中讀出密鑰,將數(shù)據(jù)庫解密,并通知被訪問用戶在被訪問客戶機上建立用戶數(shù)據(jù)庫副本,同時把解密后的數(shù)據(jù)庫副本的訪問權(quán)返回給用戶的客戶機,將庫的引用計數(shù)加1;如果數(shù)據(jù)庫副本已經(jīng)存在,則直接將數(shù)據(jù)庫副本的訪問權(quán)返回給用戶的客戶機,將庫的引用計數(shù)加1。
本發(fā)明只采用一個數(shù)據(jù)庫副本,這樣可以避免由于為每個用戶創(chuàng)建副本,在關(guān)閉數(shù)據(jù)庫時,必須用所有副本的內(nèi)容同時更新原庫,帶來的操作上的困難,和因為要使用臨時文件而增加的額外的資源開銷。采用一個副本,只是會在多個用戶對同一條記錄產(chǎn)生讀、寫沖突時,根據(jù)并發(fā)策略會產(chǎn)生一定的延遲。單副本易于減輕副本維護工作,并能保證數(shù)據(jù)的正確性。
參見圖4,客戶機訪問其他用戶數(shù)據(jù)庫的示意圖。例如,圖4中所示,服務(wù)器400中用戶A、B、C、D位于組1中,用戶E位于組2中,其中箭頭8表示用戶A已取得了用戶B的信任。本實施例中,用戶A與用戶B建立信任關(guān)系時,用戶B的數(shù)據(jù)庫沒有被其他用戶訪問,所以,服務(wù)器400判斷出用戶B的數(shù)據(jù)庫副本尚未存在,于是從配置數(shù)據(jù)庫401中讀出該數(shù)據(jù)庫密鑰,將數(shù)據(jù)庫解密,并通知用戶B在客戶機B上建立用戶數(shù)據(jù)庫副本422,同時把解密后的數(shù)據(jù)庫副本422的訪問權(quán)返回給客戶機A,將用戶B的用戶數(shù)據(jù)庫的引用計數(shù)加1添入配置數(shù)據(jù)庫401的用戶數(shù)據(jù)庫信息表408中,如圖4中箭頭9表示。用戶B在客戶機B上建立用戶數(shù)據(jù)庫副本。
如圖4所示,客戶機B中,除了自身的包含公有數(shù)據(jù)4211和私有數(shù)據(jù)4212的用戶數(shù)據(jù)庫421外,還建立了同樣包含公有數(shù)據(jù)4221和私有數(shù)據(jù)4222的數(shù)據(jù)庫副本422。
其中,同在組1的用戶C、D,只能以只讀方式訪問用戶B在客戶機B420的數(shù)據(jù)庫副本422中的公有數(shù)據(jù)4221。也就是說,同組的非信任用戶能夠以只讀方式訪問被訪問數(shù)據(jù)庫中的公有數(shù)據(jù)。
用戶A可以訪問與其建立了信任關(guān)系的用戶B在客戶機B420的數(shù)據(jù)庫副本422中的所有數(shù)據(jù),包括公有數(shù)據(jù)4221和私有數(shù)據(jù)4222,且對公有數(shù)據(jù)4221有改寫的權(quán)限,但對于私有數(shù)據(jù)4222只有只讀權(quán)限。如果此時有其他用戶對客戶機B420的數(shù)據(jù)庫副本422的同一條記錄同時要求操作時,由其中一個用戶對該條記錄進行操作,另一個用戶延時操作。
組1外的用戶沒有權(quán)限訪問用戶B在客戶機B420的數(shù)據(jù)庫副本。例如,圖4中所示的組2內(nèi)的用戶E就不能訪問用戶B在客戶機B420的數(shù)據(jù)庫副本422中的任何數(shù)據(jù)。
如圖4中箭頭10所示,客戶機A410訪問客戶機B420的數(shù)據(jù)庫副本422。本實施例中,客戶機A410只對用戶B在客戶機B420的數(shù)據(jù)庫副本422中的數(shù)據(jù)進行操作,客戶機A410不需要將自身的用戶數(shù)據(jù)庫410打開和建立數(shù)據(jù)庫副本。如果客戶機A410要下載用戶B在客戶機B420的數(shù)據(jù)庫副本422中的數(shù)據(jù),或修改自身數(shù)據(jù)庫的數(shù)據(jù),客戶機A410需要將自身的用戶數(shù)據(jù)庫410打開和建立數(shù)據(jù)庫副本,同時用戶A的用戶數(shù)據(jù)庫的引用計數(shù)加1添入配置數(shù)據(jù)庫401的用戶數(shù)據(jù)庫信息表408中。
最后,訪問結(jié)束,關(guān)閉用戶B數(shù)據(jù)庫。參見圖5,關(guān)閉用戶數(shù)據(jù)庫示意圖。如圖5中箭頭11所示,客戶機A510向服務(wù)器500發(fā)送關(guān)閉數(shù)據(jù)庫的請求,服務(wù)器500查看用戶B的用戶數(shù)據(jù)庫的引用計數(shù),如果引用計數(shù)為1,表示當(dāng)前僅有此用戶在對數(shù)據(jù)庫操作,庫可以關(guān)閉。如圖5中箭頭12所示,服務(wù)器500會將副本重新加密,并通知客戶機B520刪除副本,同時將引用計數(shù)減1;如果引用計數(shù)大于1,表示當(dāng)前尚有其他用戶在訪問數(shù)據(jù)庫,不能進行真正意義上的關(guān)閉,服務(wù)器500只是將該數(shù)據(jù)庫的引用計數(shù)減1以示有一個用戶放棄了對該庫的使用。本實施例中,客戶機B520的數(shù)據(jù)庫副本522只有客戶機A510操作,此時客戶機A510操作已結(jié)束。因此,如圖5中箭頭13所示,客戶機B520用數(shù)據(jù)庫副本522的公有數(shù)據(jù)5221和私有數(shù)據(jù)5222更新用戶數(shù)據(jù)庫521的公有數(shù)據(jù)5211和私有數(shù)據(jù)5212。
這樣,就完成了客戶機A訪問其他客戶機用戶數(shù)據(jù)庫的整個過程。采用同樣的方法,服務(wù)器中的其他用戶客戶機也可以訪問客戶機A的用戶數(shù)據(jù)庫。這就實現(xiàn)了嵌入式系統(tǒng)中不同客戶機間的數(shù)據(jù)共享。
在上述過程中,用戶A還可以通過另一種方式訪問其他用戶的數(shù)據(jù)庫用戶先查詢系統(tǒng)內(nèi)除自己以外所有用戶的數(shù)據(jù)庫信息,如果發(fā)現(xiàn)自己感興趣的庫,請求加入該庫創(chuàng)建者所在的組內(nèi),就可以執(zhí)行同上述第四步相同的操作來訪問所請求的數(shù)據(jù)庫。
用戶A如果還需要訪問其他組的用戶數(shù)據(jù)庫,則用戶A改變自己所在的組,其必須先從本組中脫離,再加入另一組,再執(zhí)行和上述第四步相同的操作。從而保證一個用戶只在一個組中,防止操作中可能出現(xiàn)的混亂情況。
用戶A要從原組中脫離,必須先刪除其與組內(nèi)其他用戶數(shù)據(jù)庫的信任關(guān)系。例如,本實施例中,需要刪除用戶A和用戶B的信任關(guān)系。刪除信任關(guān)系很簡單,只需將配置庫的信任關(guān)系表中“請求信任用戶名”字段中用戶A的記錄,和“被請求用戶名”字段中用戶B的記錄刪除即可。然后,用戶A加入到default_group,成為游離用戶。
如果服務(wù)器需要刪除用戶A,需將其在配置數(shù)據(jù)庫中的所有信息刪除和將客戶機A中的用戶數(shù)據(jù)庫刪除。即先將所有與用戶A相關(guān)的信任關(guān)系從信任關(guān)系表中刪除,再將用戶A的所有用戶信息從用戶信息表中刪除、將用戶A的所有組信息從組信息表中刪除、將用戶A的所有數(shù)據(jù)庫信息從用戶數(shù)據(jù)庫信息表中刪除。同時,將客戶機A中的用戶數(shù)據(jù)庫刪除。
在刪除用戶數(shù)據(jù)庫時,可能會出現(xiàn)用戶數(shù)據(jù)庫正在被其他用戶訪問,即引用計數(shù)不為0的情況,則將該用戶數(shù)據(jù)庫設(shè)置為準(zhǔn)刪除數(shù)據(jù)庫。是通過將配置庫數(shù)據(jù)庫信息表中該數(shù)據(jù)庫的“數(shù)據(jù)庫創(chuàng)建者”字段置為DELETED來實現(xiàn)的,準(zhǔn)刪除數(shù)據(jù)庫不允許再有用戶試圖打開,此時不能進行真正的刪除工作。所以,采用了“延遲刪除”的方法,在每次服務(wù)器重啟時首先將準(zhǔn)刪除數(shù)據(jù)庫的數(shù)據(jù)庫信息刪除,也就是在配置數(shù)據(jù)庫的數(shù)據(jù)庫信息表中查找“數(shù)據(jù)庫創(chuàng)建者”字段為DELETED的記錄,將該記錄刪除,同時將該用戶數(shù)據(jù)庫的客戶機中的用戶數(shù)據(jù)庫物理刪除。
本發(fā)明方法還可以將已建立的組刪除。刪除組的操作過程為先將該組中所有用戶回收到default_group中,成為游離用戶,等待添加到新組中去,再將配置數(shù)據(jù)庫的組信息表中該組的信息刪除即可。
另外,本發(fā)明方法對服務(wù)器和用戶之間傳輸?shù)乃行畔⒍歼M行了加密/解密處理;對用戶數(shù)據(jù)庫和配置數(shù)據(jù)庫中的所有信息也進行了加密/解密處理;對用戶數(shù)據(jù)庫之間進行數(shù)據(jù)交換的所有數(shù)據(jù)也進行了加密/解密處理。這就避免了其他用戶對數(shù)據(jù)庫的惡意破壞,保證了數(shù)據(jù)的安全性。
由此可見,本發(fā)明方法實現(xiàn)了嵌入式系統(tǒng)中客戶機之間的數(shù)據(jù)共享。本發(fā)明由于采用一個數(shù)據(jù)庫副本,易于減輕副本維護工作,并能保證數(shù)據(jù)的正確性。同時,本發(fā)明通過使用數(shù)據(jù)庫引用計數(shù)和在刪除用戶時設(shè)置準(zhǔn)刪除數(shù)據(jù)庫,將邏輯操作與物理操作區(qū)分開,使得耗費資源的操作一次性或成批處理,加快了整個系統(tǒng)的運行速度。另外,用戶創(chuàng)建的數(shù)據(jù)庫都是經(jīng)過加密處理的,密鑰只掌握在數(shù)據(jù)庫創(chuàng)建者手中,避免了其他用戶對數(shù)據(jù)庫的惡意破壞,保證了數(shù)據(jù)的安全性。
綜上所述,本發(fā)明方案充分考慮到了數(shù)據(jù)的正確性、安全性以及系統(tǒng)的效率,通過分組管理和組內(nèi)建立信任關(guān)系達到了客戶機之間數(shù)據(jù)共享的目的,對嵌入式系統(tǒng)中的數(shù)據(jù)交換方式提供了有效的支持。
權(quán)利要求
1.一種實現(xiàn)嵌入式系統(tǒng)中不同用戶客戶機間數(shù)據(jù)共享的方法,其特征在于,該方法包括以下步驟1)在嵌入式系統(tǒng)的服務(wù)器中建立包含所有用戶配置信息的配置數(shù)據(jù)庫,并將配置數(shù)據(jù)庫中的用戶信息進行分組;2)用戶客戶機根據(jù)自身需要選擇組并加入;3)用戶客戶機通過服務(wù)器向同組中被訪問用戶發(fā)送請求信任信息,被訪問用戶接受請求后將信任信息添加到配置數(shù)據(jù)庫中,建立信任關(guān)系并通知用戶客戶機;4)服務(wù)器根據(jù)被訪問用戶接受的請求信任信息將被訪問用戶數(shù)據(jù)庫的副本返回到被訪問用戶客戶機中;5)用戶客戶機對被訪問用戶客戶機的用戶數(shù)據(jù)庫副本進行訪問;6)訪問結(jié)束,用被訪問用戶的數(shù)據(jù)庫副本更新被訪問用戶客戶機中的數(shù)據(jù)庫。
2.如權(quán)利要求1所述數(shù)據(jù)共享的方法,其特征在于步驟1)所述的建立配置數(shù)據(jù)庫包括建立用戶信息表單、組信息表單、用戶數(shù)據(jù)庫信息表單和信任關(guān)系表單。
3.如權(quán)利要求1所述數(shù)據(jù)共享的方法,其特征在于步驟1)進一步包括在服務(wù)器中設(shè)置一個默認組,在系統(tǒng)添加新用戶或刪除組時,服務(wù)器將該用戶或?qū)⒈粍h除組中的所有用戶加入該默認組。
4.如權(quán)利要求1所述數(shù)據(jù)共享的方法,其特征在于,該方法步驟2)進一步包括用戶查詢系統(tǒng)中所有的組信息,通過組描述獲得每個組的特定功能信息。
5.如權(quán)利要求1所述數(shù)據(jù)共享的方法,其特征在于,該方法步驟3)進一步包括用戶通過查詢組內(nèi)其他用戶數(shù)據(jù)庫的信息,查詢到將要訪問的用戶數(shù)據(jù)庫。
6.如權(quán)利要求1所述數(shù)據(jù)共享的方法,其特征在于,該方法步驟3)進一步包括用戶將自身的庫/表名和訪問權(quán)限發(fā)送給服務(wù)器;建立信任關(guān)系后,服務(wù)器將用戶的訪問權(quán)限返回給用戶。
7.如權(quán)利要求6所述數(shù)據(jù)共享的方法,其特征在于,該方法步驟3)進一步包括將用戶請求建立信任時傳入的訪問權(quán)限與其自身庫建立時設(shè)定的訪問權(quán)限做比較,如果用戶請求訪問權(quán)限高于建庫時初始權(quán)限,則用戶的訪問權(quán)限為建庫時初始權(quán)限,否則為用戶請求建立信任時傳入的訪問權(quán)限。
8.如權(quán)利要求1所述數(shù)據(jù)共享的方法,其特征在于同組的非信任用戶以只讀方式訪問同組中被訪問數(shù)據(jù)庫中的公有數(shù)據(jù)。
9.如權(quán)利要求1所述數(shù)據(jù)共享的方法,其特征在于,該方法步驟4)為服務(wù)器先判斷被訪用戶數(shù)據(jù)庫的副本是否存在,如果不存在,則從配置數(shù)據(jù)庫中讀出密鑰,將該被訪用戶數(shù)據(jù)庫解密,并通知被訪問用戶在被訪問客戶機上建立用戶數(shù)據(jù)庫副本,同時把解密后的數(shù)據(jù)庫副本的訪問權(quán)返回給用戶客戶機,如果數(shù)據(jù)庫副本已經(jīng)存在,則直接將數(shù)據(jù)庫副本的訪問權(quán)返回給用戶客戶機。
10.如權(quán)利要求9所述數(shù)據(jù)共享的方法,其特征在于在服務(wù)器中進一步為每個用戶數(shù)據(jù)庫設(shè)置一個引用計數(shù),當(dāng)服務(wù)器創(chuàng)建用戶數(shù)據(jù)庫副本時或用戶數(shù)據(jù)庫副本已存在,又有其他用戶要對同一用戶數(shù)據(jù)庫副本進行訪問時,該用戶數(shù)據(jù)庫引用計數(shù)加1;在需要關(guān)閉某用戶數(shù)據(jù)庫時,該用戶數(shù)據(jù)庫的引用計數(shù)減1,結(jié)果如果為0,則關(guān)閉該用戶數(shù)據(jù)庫。
11.如權(quán)利要求1所述數(shù)據(jù)共享的方法,其特征在于,該方法進一步包括如果多個用戶對同一用戶數(shù)據(jù)庫的同一條記錄同時要求操作時,由其中一個用戶對該條記錄進行操作,其他用戶延時操作。
12.如權(quán)利要求1所述數(shù)據(jù)共享的方法,其特征在于,該方法進一步包括在刪除用戶數(shù)據(jù)庫時,如果該用戶數(shù)據(jù)庫正在被其他用戶訪問,則服務(wù)器將該用戶數(shù)據(jù)庫設(shè)置為準(zhǔn)刪除數(shù)據(jù)庫,在服務(wù)器重啟時,服務(wù)器將該準(zhǔn)刪除數(shù)據(jù)庫從配置數(shù)據(jù)庫中刪除,同時刪除用戶客戶機中的用戶數(shù)據(jù)庫。
13.如權(quán)利要求1所述數(shù)據(jù)共享的方法,其特征在于,該方法進一步包括對服務(wù)器和用戶之間傳輸?shù)乃行畔⑦M行加密/解密處理;對用戶數(shù)據(jù)庫和配置數(shù)據(jù)庫中的所有信息進行加密/解密處理;對用戶數(shù)據(jù)庫之間進行數(shù)據(jù)交換的所有數(shù)據(jù)進行加密/解密處理。
全文摘要
本發(fā)明公開了一種實現(xiàn)嵌入式系統(tǒng)中不同用戶客戶機間數(shù)據(jù)共享的方法,該方法包括以下步驟1)在嵌入式系統(tǒng)的服務(wù)器中建立配置數(shù)據(jù)庫,并將配置數(shù)據(jù)庫中的用戶信息進行分組;2)用戶客戶機根據(jù)自身需要選擇組并加入;3)用戶通過服務(wù)器與同組中被訪問用戶建立信任關(guān)系;4)服務(wù)器根據(jù)信任關(guān)系將被訪問用戶數(shù)據(jù)庫的副本返回到被訪問用戶客戶機中;5)用戶客戶機對被訪問用戶客戶機的用戶數(shù)據(jù)庫副本進行訪問;6)訪問結(jié)束,用被訪問用戶的數(shù)據(jù)庫副本更新被訪問用戶客戶機中的數(shù)據(jù)庫。本發(fā)明對嵌入式系統(tǒng)中的數(shù)據(jù)交換方式提供了有效的支持,同時,維護方便,并能保證數(shù)據(jù)的正確性。
文檔編號G06F17/30GK1492347SQ0214596
公開日2004年4月28日 申請日期2002年10月25日 優(yōu)先權(quán)日2002年10月25日
發(fā)明者孫雅莎, 楊柏梁, 丁剛 申請人:聯(lián)想(北京)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1