TWI477990B - 辨識媒體裝置內容之改變 - Google Patents

辨識媒體裝置內容之改變 Download PDF

Info

Publication number
TWI477990B
TWI477990B TW096102535A TW96102535A TWI477990B TW I477990 B TWI477990 B TW I477990B TW 096102535 A TW096102535 A TW 096102535A TW 96102535 A TW96102535 A TW 96102535A TW I477990 B TWI477990 B TW I477990B
Authority
TW
Taiwan
Prior art keywords
indicator
item
slave device
value indicator
data
Prior art date
Application number
TW096102535A
Other languages
English (en)
Other versions
TW200817940A (en
Inventor
Blake D Manders
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 TW200817940A publication Critical patent/TW200817940A/zh
Application granted granted Critical
Publication of TWI477990B publication Critical patent/TWI477990B/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • 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
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

辨識媒體裝置內容之改變
本發明大致係關於一種用以暴露與一組資料物件有關的資訊給一主控裝置的方法。
數位相機、個人媒體播放器、行動電話與其它裝置持續變得更普及與廣泛。使用者拍照、聽音樂、看電影..等等,並通常在裝置與其他裝置(如電腦)間分享資料。例如,音樂檔可先下載至電腦,然後再傳送到可攜帶的音樂播放器。數位照片可拍下後,然後再傳送至計算裝置。但如何以有效率的方式且適合使用者的方法來識別一特定裝置內資料的改變,一直是個問題。
考慮以下二說明範例:數位相機與數位音樂播放器。在數位相機的情況下,使用者可能拍下數十或數百張的照片,在已經上傳過先前一組照片後,現在只想再將其中的一部份上傳至電腦。或在可攜帶的音樂播放器的情況下,它的內容可能被改變(manipulated),而不論發生什麼改變,可能希望將這些改變複製在電腦上。至少二情況會使此問題惡化:電子裝置的儲存容量快速地增加,以及需要一種可和多種起始應用程式通訊的裝置。
可攜帶的音樂播放器與其它裝置總是儲存數十億位元組的資訊,且儲存容量將毫無疑問地持續增加。以歷史的觀點來看,儲存容量以二次方的速度成長,但是傳送速度 則是以線性的速度成長。運送儲存在電子設備上約幾百億位元資料的資訊顯然比幾百萬位元資料的資訊更加困難。目前,處理此種情況的方法之一為詢問電子裝置以決定出其元件之一完整映射(mapping),然後讓一請求應用程式來決定如何管理此裝置的內容。在這樣的範例中,該裝置與該PC之間未被假設存在任何關係。PC係藉由從一裝置下載內容而獲知該連接裝置上的資訊。
雖然科技已經嘗試提高裝置與電腦之間的資料傳送速度來改善上述問題,但基於許多原因,僅增加傳送速度並不是一個好的解決方法。第一,不必要地傳送數百億位元組的資訊給PC本來就是一種浪費。第二,如果沒有一適當的可替代方案,使用者等待的時間會比其原必須要等待的時間還久。且最重要的是,多個應用程式彼此競爭以存取一已耦接裝置上的內容。例如,一旦聲音播放器被耦接至電腦時,多個聲音檔應用程式將試圖與可攜帶的聲音播放器建立通訊。如果各播放器獨立地動作,則各播放器必須下載該已耦接裝置上所有的資訊,才能獲得該耦接裝置上的內容。
於某些設定中,電腦與電子裝置間存在著一對一的關係。此使事情變得簡單,但有很明顯的缺點。例如,一些媒體播放(media-playing)應用程式被設計只與某些品牌的媒體播放裝置相容。在此情況下,該計算裝置與該電子裝置之間能被假設有關係存在。此使得有同步化資料庫之選擇可採用。該計算裝置上存在著資料庫,且該電子裝置上 面也存在著資料庫。當二資料庫之一產生改變時,不論是其一或另一者(反之亦然)出現改變,均可複製這些改變以為準備。惟當該計算裝置上有二或更多應用程式試圖與一耦接的電子裝置上的資料庫連通資訊時,此模式即不再適用。此難以克服的且習知的問題被稱為「多重主機同步化問題(multi-master synchronization problem)」。同樣的,將儲存數十億位元組(未來可能是數兆位元組)資訊的資料庫或資源密集的資訊(如下所示),加以同步化是不必要的。
總結來說,同步化計算裝置與電子裝置間的資料的兩種主要方法為:將資料庫鏡射(mirror)於各裝置上,或接收耦接至計算裝置的電子裝置上所有內容完整的映射(mapping)。這些方法均不能在無需實際傳送該裝置上所有媒體內容的情況下,快速且有效地提供一種可獲得該裝置上內容的有效方法。例如,在將數百張照片留在數位相機上後,使用者可能只多拍幾張額外的照片,然後重新將相機連接至計算裝置。這些方法均不能呈現一體適用的方法以接收僅有少數最近的照片為新的指示,和使該計算裝置具能力以呈現選項給使用者,以運用已經改變的內容。這種問題普遍存在於諸如行動電話、PDA、可攜帶媒體播放器等此類型的種種裝置上。
提供此發明內容,並以簡單的形式介紹觀念的選擇,且將於實施方式進一步說明。此發明內容並不是想要識別 所宣稱的標的的關鍵特徵或基本特徵,也不想要用於限縮所宣稱標的的範圍。
此說明書描述有效地接收和呈現物件資訊(object information)的方法和資料結構,該物件資訊乃關於媒體裝置(如電子裝置)上的某些資料物件(data objects)。資料物件包含如媒體檔案(聲音、影像、照片等)之類的項目。物件導向基元(objected-oreinted primitives)(物件元資料(object metadata)、裝置元資料(device metadata),與操作(operations))僅用於暴露所需用以允許多個請求應用程式執行與裝置間之同步化為基礎的互動(選擇的列舉(enumeration)、獲得(acquisition)、取代等)的資訊。當一物件發生改變時,它接收一順序指示符(sequence indicator),該指示符可以稍後用於關聯性地決定該改變何時發生。此方法並不依賴裝置間任何已經建立的伙伴關係或共享資訊,例如同步時脈(synchronized clocks)或更改日誌(change-logs)。本發明在此在技術領域中具有數個實用的應用,包括:減少關於識別各種類型的電子裝置上之已改變、新增、刪除的內容的時間與資源。
以下所說明之技術的精確實施(implementation)可在不超出以下申請專利範圍之範疇下進行多種變化。提供一種容許識別一裝置上之物件被改變的順序(包括建立與刪除)之屬性,其亦與至少一種容許識別該順序中目前位置 (position)之屬性相關。注意,這裡所使用的「順序(sequence)」、「順序的(sequential)」和其它變化並無意指一連續系列或一組具有共同差距的連續數值。相反的,在此已將間格距完整纳入考量。因此,「1、4、897、6987」這組數字將會是本文所使用之一順序中的數值。此將允許快速呈現資訊(如,在該順序之一欲求範圍(例如,比某些數值還大)內某些物件名稱的名單(list))予一請求裝置。
本發明說明從頭至尾使用數個縮寫(acronyms)和速記標記,以幫助瞭解相關系統與服務的某些概念。這些縮寫和速記標記僅是作為提供傳遞此處所表達的構想的簡單方法之用,並絕對無意要限縮本發明的範圍。以下為這些縮寫的列表。
本發明示意性態樣將會於以下詳盡地說明。列出一些態樣不應該被解讀為不存在其它的態樣。提供精選的名單僅作為說明之目的。
在一第一示意性態樣中,提供一電腦程式產品,以使一主控裝置(a master device)執行一種方法,以接收關於從屬裝置(a slave device)上種種物件的物件資訊。在一實施例,在從屬裝置上各物件係與一單調的順序指示符(a monotonic sequence indiator)有關。該方法包含從主控裝置擷取(retrieve)先前最大順序數值指示符(maximum-sequence value indicator),其指示從屬裝置最後與主控裝置通訊的時間。基於先前最大順序數值指示符與各種物件的物件順序指示符,可以接收到從屬裝置上新增的或自從從屬裝置與主控裝置最後通訊以來已經變更的物件組的相關資訊。
在一第二示意性態樣中,提供一具體的資料結構,以協助呈現與電子裝置之物件相關的資訊至另一裝置。針對該裝置上的各資料物件均有一資料結構。也提供與該組物件相關的最大順序數值指示符(MSVI)。該資料結構包含種種說明該物件各種態樣的屬性,但也包含一順序識別欄位,在該順序識別欄位中植入一物件順序指示符(object sequence indicator,OSI),該物件順序指示符指示相對於最大順序數值指示符的何時該資料物件產生改變。建立新物件係涵蓋在「改變」的範疇中。
在一第三示意性態樣中,提供一種用以儲存資訊的方法,該資訊係與一組存在於儲存媒體上的資料物件相關,該儲存媒體係與至少一MSVI相關。該方法包含從多個個別的請求應用程式接收多個獨立物件資訊的請求,其中各請求係針對於有關至少一部分資料的資訊,由各請求識別一個別先前MSVI(其表示從屬裝置最後與個別請求應用程式通訊時的時間),以及利用先前儲存的物件順序指示符(其與個別先前最大順序數值指示符相關)來滿足每一這類請求,使得每一請求應用程式接收關於僅只其對應物件順序指示符可滿足與最大順序數值指示符有關之標準的那些資料物件的資訊。
在一第四示意性態樣中,提供一種用於識別資料物件在一裝置上被改變或建立之一順序的方法。該方法包含:為該資料物件之各者提供順序位置指示符,其相對於一組先前指派的順序位置指示符而單調地變化。該方法更包含為通訊目的而提供一組物件參照,該物件參照對應至一組物件,該組物件包括新建立的物件與在一已定義點之後至少一屬性已經改變的物件。
在最後一個示意性態樣中,一實施例採用了具體指令的形式,該等指令促進(facilitate)從屬裝置與主控裝置間的資訊交換。提供在從屬裝置上一組一或更多物件有關的基準順序指示符(benchmark sequence indicator)的接收。各物件其個別地與一單調順序指示符有關。亦提供依據該基準指示符來決定何物件係位在從屬裝置上的方法。
本發明可用一般電腦程式碼或機器可使用的指令來說明,包括電腦可執行的指令,例如:程式模組,藉由電腦或其它機器(例如個人資料協助或手持裝置)執行。一般來說,包含程序(routines)、程式、物件、元件、資料結構、協定等等的程式指執行特殊任務或實現特殊抽象資料型態的碼。本發明可經由種種的系統設定實作,包括手持裝置、消費性電子、一般目的電腦,和更多特殊的計算裝置等。本發明也可於分散式計算環境中實作,其中任務(tasks)經由透過通訊網路所連結的遠端處理裝置來執行。
請參考第1圖,其提供作為範例用的主控裝置100的態樣。主控裝置100可為電腦或計算裝置、遊戲主機、音響主機單元等,但僅為適合操作環境的範例。我們無意建議關於本發明的使用或功能性的範圍的任何限制,也不應對於所說明之元件任一或其組合解讀其具相依性或必需性。
請參考第1圖,主控裝置100包含一匯流排110其直接或間接耦接以下裝置:記憶體112、一或更多處理器114、一或更多呈現介面(presentation interface)116、輸入/輸出(input/output,I/O)埠118、輸入/輸出元件120,和示意性電源供應器122。匯流排110可代表一或更多匯流排(如一位址匯流排、資料匯流排,或它們的組合)。雖然第1圖的各種方塊為了簡潔的因素而以線條所示,事實上,描繪各種元件便不是那麼清楚,因此,比喻上地,這些線條可以更精確地為灰色與模糊。舉例來說,可以將呈 現元件(如,顯示裝置)當成輸入/輸出元件。同樣地,處理器具有記憶體。我們承認此為這類技術的本質並且再次聲明第1圖圖示僅用於說明主控裝置之用,且該範例主控裝置可用於關於本發明的一或更多實施例。因為「工作站(workstation)」、「伺服器(server)」、「膝上型電腦(laptop)」、「手持裝置(hand-held)等範疇」都在第1圖所考慮的範圍內,且均被歸類為一種主控裝置類型(如電腦)之故,在此並不作區分。
主控裝置100一般來說包含種種電腦可讀取的媒體。舉例而言(不是限制),電腦可讀取的媒體得包括隨機存取記憶體(Random Access Memory,RAM)、唯讀記憶體(Read Only Memory,ROM)、電子式可消除唯讀記憶體(Electronically Erasable Programming Read Only Memory,EEPROM)、快閃記憶體(Flash Memory)或其它記憶體技術;CDROM、數位影音光碟(Digital Versatile Disks,DVD)或其它光碟或或全像式(holographic)媒體;磁卡帶(magnetic cassettes)、磁帶(magnetic type)、磁碟儲存(magnetic storage)、或其它磁性儲存裝置;可移除的媒體(如拇指碟、快閃卡等)以及載波或任何可用於編碼所想要的資訊和經由主控裝置100存取的媒體。記憶體112包含揮發和/或非揮發記憶體形式的電腦儲存媒體,以及包含以上所提到的任何媒體類型。
主控裝置100包含一或更多處理器,該一或更多處理器從各種實體(如記憶體112或I/O元件120)讀取資料。呈 現介面116把資料指示呈現給使用者或其它裝置,且呈現介面可為該裝置100的一部份,或與其耦接。作為範例之用的呈現元件包括顯示裝置、喇叭、列印元件、震動元件等。I/O埠118允許主控裝置100邏輯上地耦接至包含I/O元件120(其某些可內建)的其它裝置。元件包括例如:麥克風、搖桿、遊戲手把(game pad)、衛星耳朵(satellite dish)、掃瞄機、印表機、無線裝置等等。
請參閱第2A圖,顯示一媒體裝置210,其耦接至一主控裝置212。媒體裝置210能讀取一或更多機器可讀取的媒體,如元件符號211A和211B所代表者。該媒體可為先前所述地永久性的或可移除的。在各種實施例裡,媒體裝置210可為電子裝置,例如數位相機214、PDA 216、行動電話218、可攜帶的音樂播放器220或可攜帶的媒體播放器222,或種種未顯示出來但是經思量後藉由省略部分224所指出的其它裝置。以下,媒體裝置210將被稱為從屬裝置210,因為在本發明中,從屬裝置在運作上必須聽命於主控裝置212。主控裝置212包含一組被用於實現本發明各種功能面的機器可讀取的指令225。主控裝置212得以膝上電腦226、無線電頭部單元228、遊戲主機230、其它形式的計算裝置232,或其它沒有顯示出來但已經由省略部分所代表的其它主控裝置。
主控裝置212被顯示包含多個由元件符號234、236、238所標出的請求應用程式。因為從屬裝置210與主控裝置212上之請求應用程式234至238處於一對多關係,所 以不是點對點(peer-to-peer)環境。該等主控應用程式各者個別地包含一先前的最大順序數值指示符(MSVI),其由元件符號234A、236A、238A個別地代表。以下將會更詳細地說明,但一先前的最大順序數值指示符由從屬裝置210所提供,且其指示在連接至主控裝置212的時候該裝置之最大順序指示符。在某些實施例中,維護二基準指示符:一先前最大順序數值指示符與一目前最大順序數值指示符,該目前最大順序數值指示符接納從新耦接的從屬裝置210來的一目前數值,該先前最大順序數值指示符則儲存最近被取代的目前最大順序數值指示符。此也將於以下(第8圖)作進一步說明。
主控裝置212對從屬裝置210發出請求,從屬裝置以和從屬裝置210上種種物件有關的資訊作回應。從屬裝置210描繪出一更複雜的實施例。例如,從屬裝置210描繪出兩組分開的物件,一第一組物件242和一第二組物件246。物件組242包含一對應的最大順序數值指示符248。相同地,物件組246包含一對應的最大順序數值指示符250。於此應用程式中,將解釋種種的方案。不需要複雜解釋的情況將概略參照物件組242,該物件組具有最大順序數值指示符248,該最大順序數值指示符248係用於與個別的順序指示符產生關聯,以向一範例應用程式(如,應用程式234)呈現資訊。
在本發明的一實施例,使用一以物件屬性為基礎的協定(an obiect property-based(OPB)protocol)來幫助資訊 243A、243B與243C(如,物件之處理(object handle)、其它參照、摘要資訊,以及物件本身)與主控裝置212間的通訊,且如果可以的話,還可包括與個別請求應用程式234、236、與238間的通訊,以回應個別的資訊請求241A、241B與241C。
此處所使用的OPB協定,是可將所有元素(element)呈現為物件,且可在不需要擷取物件本身的情況下以屬性來說明該物件的任一種協定。以物件形式來揭示內容,且以和該物件不同的屬性來說明該內容。一以物件為基礎的協定是一種可使用操作、回應、和(或者)事件的組合,來存取一裝置與其內容的協定。其使用這些來說明其內容(以物件形式表現)。物件係由以下所組成:用來稱呼協定中之物件的指示符(如物件處理、檔案名稱或物件名稱);可說明該物件之經選取的元資料(metadata)(如,屬性),該元資料係在無須擷取二進位有效負載(binary payload)本身的情況下而可擷取的資料;以及一或更多二進位資源(其包含可組成物件主體的二進位檔案)。有僅由屬性所組成的物件,這些物件不具有二進位元件。這些則稱為抽象物件(abstract objects)。
一例示的協定包含媒體傳送協定(media transfer protocol,MTP),其可以額外的資訊更完整地說明,以同步化以下文件所述電子裝置間的資料:(1)美國專利申請號10/836260(2004年5月3日申請)、(2)美國專利申請號10/839299(2004年5月5日申請)、(3)名為媒體傳送協定 (media transfer protocol)說明書,以上均可在微軟公司的網頁MSDN.Microsoft.com取得。藉由參考(至少所述的目的),可很快速地將此三份文件的各者併入本說明書中。
在一以物件為基礎的協定中,以整個物件的方式傳送物件。亦即,為一物件而產生一請求。這樣的方案(scheme)的好處在於已請求的檔案可激發如檔案結構和作業系統。因此,檔案可跨越不同的作業系統和檔案系統來通訊。該檔案變成中性或共有(mutual),可從一裝置傳送至另一裝置。注意,在這裡當談到傳送檔案時,是指包含傳送檔案拷貝的觀念,而非真實地搬動檔案。此為習知技術中已知悉的。
在一實施例中,主控裝置212掌管一切,該從屬裝置210將一直試圖暴露該主控裝置212的內容。在點對點的環境中,主從間的關係可能倒轉。亦即,主控裝置也可以為從屬裝置,而從屬裝置也可為主控裝置。本發明目的視要解決與一對多環境相關的問題,其係與點對點環境下的議題有極大的差異。本發明可適用的操作環境包含車用無線電,其請求一媒體播放器的內容;一遊戲主機,其請求耦接於其上的裝置的資訊;以及在第2A圖詳盡地說明的無數其它實例,與熟知領域技術者讀到本發明所揭露時,便可理解的許多其它裝置(settings)。
前面已述,本發明所要處理的難題之一(並不是唯一)為能夠快速地暴露新的或已改變的內容給請求一電子設備的應用程式。該難題有很多方面,且更進一步的目標為能 夠識別在改變的順序中,特定物件何時產生一特定的改變(其至少與該裝置與主控裝置212最後溝通時間有關的改變)。各種方法論將不管用。例如,因為沒有指示關於最後傳遞給請求裝置的改變何時發生,數位相機上的時鐘並不是一個能夠告訴照片是何時拍的可靠指示符。可能甚至無法提供足夠地單獨地識別照片拍攝時間的順序地址。不幸地,許多消費者根本不設定他們數位相機上的時鐘。
此外,當人們跨越時區時,特別是往西旅行時,即使個人真的預先去設定他們的時鐘,最後也是必須向後設定他們的時鐘,其可能會導致錯誤的指示,使得一些照片看起來是比其它照片早拍攝,而實際上卻是比該些照片後拍攝的。時鐘也並不提供針對於該裝置最後與主控212通訊之時間的相對量測。
使用時鐘作為潛在的順序指示符的另一例證的缺點為其有可能不夠準確。一些高檔的相機能夠連續拍攝多張照片,包括保守估計每秒數張照片。如果時鐘保持至幾秒的時間,則以高速快門所拍的十張連續的照片有可能接收到全部都一樣的時間戳記(time stamp)。
綜觀現有技術,例如且包括點對點同步化技術,將不足夠啟發而決定一解決方法,以能夠萬用地識別起因於電子裝置(如從屬裝置210)上的物件的一相關順序。這樣舊式邏輯其實混淆此問題,肇因於在不同範例中處理事情的方法的舊思維對於解決本發明的操作環境中的問題並不有用,包括物件組242和多個起始應用程式234、236與238 之間的一對多關係。再一次地,這些問題之一能夠快速地識別已改變的物件(包括屬性已經改變的物件)以及新建立的物件,其不需要完整地鏡射(mirror)從屬裝置210的內容於主控裝置212上(也許其上的許多主控應用程式的許多範例因此呈現)且不需要列舉電子裝置的完整內容。
第2B圖說明某些從屬裝置210的物件如何能夠保持不變,而其它的卻不能(亦即,已修改或新增)。例如,由元件符號260所表示的物件為未改變的物件;此係針對從屬裝置210最後與主控裝置212通訊的的時間而言。在一些實施例中,這樣的選派(designation)可由使用者來控制或由裝置來控制,使得僅將從屬裝置210連接至主控裝置212並不能作為通訊事件。
已改變的物件由元件符號262來代表。在這裡所使用的「已改變(changed)」物件為一已修改的物件,或包括新建立的物件。還示出一已刪除檔案名單264,其提供一種方式可追蹤自從屬裝置210刪除的物件。此名單可設定為預設長度,以便它不會浪費過多的空間。例如,它可以被設定為保持追蹤最近的N個物件。此名單能夠僅由主控裝置212請求,以識別哪一個物件已經被刪除。在一實施例中,該名單係以2xN陣列265的形式來表示,該陣列是由識別符所組成,該等識別符識別已刪除物件以及一對應順序指示符,該指示符指示該等物件至少相對於從屬裝置的最大順序數值指示符248或250為何時被刪除,但也關於對於現存物件何時作改變或何時建立新的物件。
在本發明一實施例中,識別已修改物件或新建立物件262係由在各物件上提供一額外屬性來完成,該物件在一實施例中接收一物件順序指示符(object sequence indicator,OSI),其可用於識別一物件何時出現與其它物件有關的改變,且在一些實施例中僅與至少一基準指示符(其可為最大順序數值指示符)有關。該順序指示符可以單調地增加或單調地減少。在兩種方案中,一後續的(subsequent)數值至少和所有先前的數值一樣大(as extreme as)。單調的指示符數值不是不增加,就是不減少。不減少的數值永不減少,但連續數值可以相同。同樣地,不增加的數值永不增加,但連續數值可以相同。在一實施例,一順序指示符為不減少。亦即,該數值不斷地增加,從未擺盪。但以下申請專利範圍之範疇也涵蓋可從一過度大的數字開始並隨著時間增加而持續地減少。因此,在一實施例中,本發明採用一具體化資料結構的形式,一例示的資料結構可參照第3A圖中元件符號300所指出者。
第3A圖描述關於本發明實施例資料結構的說明代表圖。此資料結構包括一新欄位、一順序識別欄位310(其包括一順序指示符312,作為它的屬性之一)。資料結構300也包括一組由元件符號314所指出的其它資料物件屬性,其包括一檔案名稱屬性316、一解析度屬性318(當得為此情況時),以及種種由元件符號320所範例性代表的其它屬性。本發明也提供一有效負載改變指示符欄位322,以接收一對應的屬性324,此屬性324指示一媒體有效負載326 與他所對應的屬性之一來比較是否本身已經改變。舉例,如果該媒體有效負載的真實內容已經改變,則有效負載改變指示符322可為「1」,反之,如果與有效負載有關的一屬性改變但該媒體有效負載的真實內容沒有改變,則有效負載改變指示符322可為「0」。
以下將會討論此情況,當一資料物件改變時,或新建立時,它的順序識別欄位310被植入一順序指示符312。一裝置可能儲存好幾百、好幾千,甚至更多的資料物件,各物件帶有一相應的順序識別欄位310和順序指示符312。集合這些順序指示符且其將與一最大順序數值指示符(其一般與一裝置有關,但也可和個別組的資料物件相關在一起)一起使用,使得可識別出發生在各種物件上之變化相對於最大順序數值指示符和/或相對於彼此(視情況)的一順序。第3B圖僅描述表達資料結構300的另外一種方式,其由元件符號300A所表示。它也包括一順序識別欄位310A,以及一相對應的順序指示符312A。一般熟知此項技術者會理解還有很多描述第3A圖資料結構的方法,其無意要限制其本質,但僅想要說明將一額外的屬性與一物件結合的具體概念,使得該屬性指示在一改變的順序中該物件何時發生改變。
因此,在一實施例中,本發明利用在以物件屬性為基礎的協定中一個單調地增加之屬性來識別改變產生的順序,且更利用一關聯於一組物件或關聯於該裝置本身的一基準指示符來識別該改變在順序中發生的位置。此提供在 一些事件後(例如,在最後一次與主控裝置212通訊之後)擷取已經被創造出來的物件或已經被改變的物件之名單的能力。
本發明許多優點之一是:它針對資料如何儲存於從屬裝置210上的實行細節提供高度彈性。只要物件各者係伴隨著順序識別欄位(例如欄位310A)而被儲存,讓主控裝置212知道如何查詢即可,因此研發人員便有很大的空間可發揮。該資料(如242、246、248與250)可以各種方式儲存,但卻以標準形式將其呈現給主控裝置212。裝置210追蹤改變的方法可因裝置不同而異,且可因裝置製造商不同而不同。這對於本發明來說是很大的好消息。藉由建立一共通平台以供加速追蹤這些改變而不管裝置內部如何儲存,裝置類型與請求應用程式之間的一對一關係便不必要,也不需要獨家系統規格(proprietary solution)。因此,很重要的是,要瞭解到先前所參考的第3A與3B圖的作為例證之資料結構並不是很輕率地便稱為例證。他們反而是重要的例證。可以採用種種儲存方案,只是用幾個作為範例之用。
參看第4圖,其提供從屬裝置210可儲存它的資料的一種方法的額外細節。在第4圖的方法400中,步驟410提供與一裝置或一組資料物件相關之一最大順序數值指示符。因此,在一實施例中,最大順序數值指示符會對應到第2A圖上的元件符號248,且該組資料物件會對應到參考元件符號242。該最大順序數值指示符係具有一確定數值 的一基準指示符。該最大順序數值指示符的數值可基於各種狀況改變。例如,在一實施例中,最大順序指示符的數值係在與主控裝置212通訊之後才更新。在其他實施例中,最大順序指示符的數值在一物件順序指示符被更新後更新。在其它的實施例中,它可以週期性地自動更新。以下先提供有關每當從屬裝置210上的物件發生一改變或一組改變時,便更新該最大順序數值指示符的實施例的說明。
繼續參閱第4圖,在步驟412中,為各資料物件242提供包括一順序識別欄位的一資料結構。因此,可使用第3A圖中所示的資料結構的格式。在步驟414中,做出關於是否有任何物件242已經改變或新建立的決定。本發明可追蹤現存物件的改變以及追蹤物件何時建立。一物件的改變包括關於該物件屬性的改變。
如果一物件真的發生改變時,則進入步驟416,其中將對應物件的順序指示符312設定成比最大順序數值指示符248還大。熟知此項技術的人將得知完成類似功能的方法,其仍被視為落入以下申請專利範圍之內。已經說明從非常大數字開始與使所有的數字以一相關起始數字減少的說明性範例。在此實施例中,該最大順序數值指示符在步驟418被更新之後,處理動作恢復至一狀態,在該狀態從屬裝置210一直等(步驟420)直到一物件改變或已經被建立。
現在將提供關於第5圖的本發明的相關實施例的進一步說明。第5圖描繪一流程圖,與一組資料物件及對應物 件順序指示符(object sequence indicators,OSI)的三個狀態,該等狀態係以元件符號510、512和514來代表。狀態510、512和514代表從屬裝置210上物件的不同狀態。在第一狀態510中,一組物件順序指示符係與對應的一組物件518相關。
該等物件順序指示符516具有數值「1001」、「1002」、「1003」和「1004」。如圖上標號520之說明,各物件處於未改變的狀態。步驟522指示在一組518物件中之一發生改變。在此實例中,假設物件524的狀態發生改變,其係以元件符號526來表示。流程圖500說明在步驟528中,藉由更新物件之對應物件順序指示符(以元件符號528來表示),來表示從一未改變狀態過渡至一已改變狀態的轉變。此處,將物件524的物件順序指示符從「1002」更新為「1006」。選取數字「1006」乃藉由參考當時最大順序數值指示符530(具有數值「1005」),並將物件526的物件順序指示符設定為比最大順序數值指示符530還要大的數值。參考元件符號532所示之決定步驟指示,最大順序數值指示符能基於本發明之各種實施例而被更新或不被更新。例如,在一第一實施例中,最大順序數值指示符不被更新,處理動作將進行至步驟534,其為地方持有者(placeholder)步驟,其指示在更新物件256的對應物件順序指示符後,最大順序數值指示符繼續保持數值為「1005」。因為從屬裝置210上次與主控裝置212通訊時,也傳遞它的數值為「1005」的最大順序數值指示符530給 主控裝置212,故此情形是可能的。
因此,當主控裝置212希望知道其與從屬裝置210最後一次通訊後所發生的任何變化時,它是有能力知道的,只要將在與主控裝置212通訊後發生的所有改變,都以一比先前最大順序數值指示符530還大的一順序指示符表示即可。纳入此解釋的目的在顯示依據實作者的期望,這樣的範例是可能的。
但在另一實施例中,最大順序數值指示符係被自動地更新,或是最大順序數值是伴隨著物件的物件順序指示符之更新而來。在這樣的情況下,將進行步驟536,其係一實施例,其最大順序數值指示符係被更新為增加(例如)二,其中一物件的物件順序指示符則被更新成為只比初始最大順序數值指示符530還要多一。再次地,狀態514顯示一可能具有數值為1006的物件順序指示符的一新物件538被創造出來,此物件順序指示符甚至與物件526的物件指示符數值相同。但在另一實施例中,物件538的物件順序指示符通常具有比「1006」還大的數值。在本實施例中,最大順序數值指示符仍然更加一,具有數值「1007」,如參考元件符號540所示。在各物件的物件順序指示符被更新後最大順序數值指示符仍未更新的情況下,係等到從屬裝置210被耦接至主控裝置212後且被給予比該等物件順序指示符516之任何一者更大的數值時,最大順序數值指示符才被更新。
現在請參閱第6圖,提供一種用以使從屬裝置210暴 露關於一組物件242的資訊給主控裝置212的方法,該方法概略以參考元件符號600代表。在步驟610,從屬裝置210從多個請求應用程式(如234、236和238)接收多個物件資訊請求(如元件符號241A、241B和241C所指示)。這是本發明的另一優點,其能夠提供關於各種物件改變順序的資訊給多個應用程式,而非僅只是給單一應用程式。
當從屬裝置210被耦接至主控裝置212時,很多應用程式可能嘗試去與從屬裝置210通訊。例如,如果從屬裝置210係一音樂播放器220,則由各種廠商所創造的各種音樂播放應用程式將感應到從屬裝置210連接至主控裝置212,並且嘗試與該裝置對話(interrogate)。請求(如241A,B,C這些)將被送至從屬裝置210,也許可列出全新的內容,或僅能列出符合某些標準的內容。
為了要滿足這些請求,從屬裝置210將在步驟612決定一適當的先前最大順序數值指示符。例如,如果從屬裝置210從應用程式234接收一請求,則它將決定關於應用程式234的正確的最大順序數值指示符為元件符號234A所指示的最大順序數值指示符。同樣地,如果請求241B來自應用程式236,則應用程式236將會提供邏輯,使得從屬裝置210將會知道最大順序數值指示符236A為正確的最大順序數值指示符。
在步驟614,從屬裝置210使用請求應用程式的最大順序數值指示符與一組物件的順序指示符(如242、246的順序指示符)滿足各請求。例如,如果請求應用程式238 發送請求241C至從屬裝置210以列出在246組中所有新的物件,然後從屬裝置210會對物件246各者的順序識別欄位310進行比較,並且回傳關於具有比238A還大之順序指示符的物件的資訊243C。應用程式238可為具有最大順序數值指示符為「973」的一照片應用程式。如果從屬裝置210係照相機,且具有數千張照片組成由參考元件符號246所指示的一集合,但僅有二影像具有比「973」還大的物件順序指示符,則僅關於這二張照片的資訊將被傳送至裝置212上的請求應用程式238。
同樣地,如果應用程式238請求在某些事件前或後被刪除的所有物件的指示,從屬裝置210可參考刪除記錄264以滿足這樣的請求。在另一範例中,應用程式可能請求只有當物件的真實二進位檔案或媒體有效負載326已經改變時才要被通知。在這樣的情況下,從屬裝置210可能參考各種物件的有效負載改變指示符322,以快速地指示哪一物件的媒體有效負載已經改變。
上面提到過,關於將資訊儲存在從屬裝置210的態樣可能呈現多樣化,如何儲存資訊以及甚至如何呈現給主控裝置212的資訊的低階細節也是一樣呈現多樣化。例如,在一實施例中,每當對物件作改變的時候,便更新物件相對應的物件順序指示符,物件指示符316可被加進一記錄,其起快速參考的作用以滿足請求應用程式的資訊的請求。在另一實施例中,可對伴隨接收請求而來的資料執行查詢(queries)。在此實施例中,如果請求應用程式請求, 例如,具有大於某數字的順序指示符的所有資料物件,則可以快速地基於所提供的標準查詢元資料314、319、322。更重要的是關聯於物件為基礎的協定可提供一資料結構,使得順序識別欄位310與物件有關且該順序識別欄位被植入(populated)伴隨在那物件的改變,使得這種物件的時間點能夠至少相對於基準指示符被決定,但在其它實施例中則是相對於其它物件所做的改變而被決定。
請參考第7圖,提供主控裝置可以執行一種方法以用於接收關於物件的資訊之示範方式的流程圖700,該等物件儲存在從屬裝置210上。在步驟710,主控裝置212接收一從屬裝置210耦接於主控裝置212的指示。在步驟712,主控裝置從儲存裝置擷取一先前最大順序數值指示符(其可能為應用程式所特有的),其係關於某應用程式。因此如果應用程式234是相關的應用程式,則其將接收最大順序數值指示符234A。同樣地,應用程式236將擷取最大順序數值指示符236A。應用程式238亦同。
前面提到過,主控裝置212(或更詳細地說一應用程式(如應用程式234))可參考二基準指示符:一先前的基準指示符和一目前的基準指示符。在這樣的架構(scheme)中,該先前的最大順序數值指示符將會被作為基準使用,藉由它測試從屬裝置210上物件的物件順序指示符,同時一目前的最大順序數值指示符將接收該裝置的最大順序數值指示符的目前數值。此態樣將會在相關的第8圖中詳細解釋。
在步驟714,主控裝置212將從從屬裝置210接收資訊(如資訊243A)。該資訊將會(例如)基於物件順序指示符和基於所擷取的最大順序數值指示符而相關於組242的某些資料物件。再一次,也許請求應用程式234僅請求例如所有新的照片。在那情況下,請求應用程式234將傳遞它先前的最大順序數值給從屬裝置210,從屬裝置將使用此數值以比對物件組242的物件順序指示符,且回傳關於僅只這些物件的資訊243A。資訊234A可包含對物件242的或其上子組(subset)的處理,或對這些物件或關於該等物件的元資料的一部份的其它參考。主控裝置212所請求的、並可藉由從屬裝置210所擷取的任何東西,都包含於資訊243A的範疇中。
因為已經接收這樣的資訊,允許主控裝置212在步驟716執行任何所想要且關於所決定物件的操作。作為範例之操作包括獲得(acquisition)、取代(placement)和改變偵測(change-detection)等操作。主控裝置212可能希望接收在資訊243A中所指示的物件的數份拷貝(copies)。主控裝置212可能希望刪除一組物件。此處可包括大量的範例,但這麼做並不實際,當應用程式234基於所提供的順序標準能夠接收關於物件組242的特定物件的資訊234A,其中資料300用於滿足該標準,熟知此項技術的人可以很快地理解大量的可能性係適用於此的。在步驟718,主控裝置212接收從屬裝置的目前最大順序數值指示符248,其現將作為先前最大順序數值指示符被儲存。因此在步驟720,基 於裝置的目前最大順序數值指示符更新先前最大順序指示符。
將參考第8圖提供最後例示性的範例,其包含本發明各種的態樣。為了討論本範例,假設請求應用程式為234,可適用的資料組為資料242,其係關聯於最大順序數值指示符248。第8圖本身也提供具體的範例,將以出現在第8圖中新的元件符號來說明這些範例。在步驟810,從屬裝置210係耦接於主控裝置212。狀態812代表一作為範例之狀態,其中物件814具有個別的物件順序指示符816。 如所示,物件814包括三張圖,其各具有相對應的物件指示符,且更包含一數值為「00151」的裝置最大順序指示符818。在步驟820,主控裝置212參考它的先前最大順序數值指示符(如元件符號248所代表者),其具有一用作說明的數值,如「00145」。在一些實施例中,一或更多裝置的最大順序數值指示符可在此時更新。在其它實施例中,一主控裝置可能僅追蹤單一基準指示符。在這樣的實施例中,主控裝置的單一最大順序數值指示符將在與從屬裝置210通訊後更新。但在此實施例中,從屬裝置210的最大順序數值指示符818是保存在一目前的最大順序數值指示符欄位824裡面。先前提過,裝置234之先前的最大順序數值826為「00145」。在步驟828,主控裝置212確定照片0049至0051是相關的(relevant),因為他們個別的物件順序指示符830都比主控裝置先前的最大順序數值指示符的數值「00145」來得大。
在步驟832,使用者選擇拷貝所有的照片,但是也將他們保留在裝置上。這些照片在步驟832也被拷貝至主控裝置212。對主控裝置212的一或更多最大順序數值指示符可以於此更新的步驟834來說,這是一用作範例的用途(point)。如所示,先前的最大順序數值指示符欄位836目前具有數值「00151」,其曾為目前的最大順序數值指示符,且為從屬裝置210的基準指示符248。在步驟838,使用者中斷與該裝置的連接,並且多拍三張照片。狀態842代表了這些物件與其相對應的物件順序指示符840的情況。如所見,新的照片844具有相對應的物件順序指示符846,其比裝置前一最大順序指示符818來得大。在這情況下,新的照片具有物件順序指示符「00152」、「00154」、「00156」。亦如狀態842所示,從屬裝置210的裝置最大順序數值指示符已經更新為數值「00157」了。
假設使用者重新連接至主控裝置212。關聯於個別請求應用程式的先前最大順序數值指示符仍然維持為「00151」。因為照片844個別的物件順序指示符846比主控裝置的先前的最大順序數值指示符(數值為00151)還大,以編號「0052」至「0054」的所代表照片844經識別後為相關的(relevant)。可選擇性地僅對所想要的且相關的物件執行操作。主控裝置212的先前最大順序數值指示符被更新為從屬裝置210的最大順序數值,其係「00157」。假設使用者中斷連線,但是接著改變PIC_0050的解析度。更新PIC_0050的物件順序指示符以使其具有比裝置目前 基準指示符(其值為00157)更大的數值。更新從屬裝置210的最大順序數值指示符為數值「00159」。一旦重新連線時,PIC_0050經識別後為相關的,因為它具有比數值為「00157」的先前的最大順序數值指示符更大的相對應物件順序指示符。主控裝置將儲存從屬裝置最大順序數值指示符的數值「00159」。已經提過如何執行有關決定什麼物件具有比某些基準更大的數值的分析。當然,可基於比該數值大或相等的數值,或基於其它變化執行分析。但在所有的情況下,某基準數值被用來與一組順序識別的數值結合使用。這些數值如何精準地被使用可能呈現多樣化,但使用他們均視為落入以下之申請專利之範圍內。在一些實施例中,最大順序數值指示符可自動地增加他自己的協調,而與改變無關。
以上一些範例係以計算裝置作為主控裝置212所提供。但前面簡短地提過,主控裝置並不限於電腦。本發明的實施例可適用於任何環境,其中藉由標準規格的順序指示符來標記(tag)改變,然後這些順序指示符將與基準指示符作比較,以決定適當的物件。
對於所述各種元件(以及沒有顯示的元件)的許多不同的安排是有可能不違背本發明的精神與範圍的。所述之本發明的實施例其用意乃是作為例證之用,而不是用來限制之用。替代且不違背本發明範圍的實施例將對此領域中熟知此技術者即能理解。熟知此項技藝者可不違背本發明的範圍發展實行上述所提之改良替代方案。例如,最大順序 數值指示符目前的與先前的數值可在主控裝置、從屬裝置或其組合上維持。該最大順序數值指示符可用於決定最大物件順序識別符(或其範圍,例如「最大物件順序識別符少於X」),但反之不需要比所有的物件順序識別符還大。更重要的是他被用於決定下一個正確物件順序識別符。
應該要理解到某些特徵和子組合是可利用的,且可不經參考其它的特徵和子組合而被採用,並屬於申請專利範圍的範圍內。各圖中所列出之所有步驟不需要以所述之特定次序中實現。
100‧‧‧主控裝置
110‧‧‧匯流排
112‧‧‧記憶體
114‧‧‧處理器
116‧‧‧呈現介面
118‧‧‧輸入/輸出埠
120‧‧‧輸入/輸出元件
122‧‧‧電源供應器
210‧‧‧媒體裝置
212‧‧‧主控裝置
211A、211B‧‧‧機器可讀取的媒體
214‧‧‧數位相機
216‧‧‧PDA
218‧‧‧行動電話
220‧‧‧可攜式音樂播放器
222‧‧‧可攜式媒體播放器
224‧‧‧其他裝置
225‧‧‧機器可讀取的指令
226‧‧‧電腦
228‧‧‧無線電頭部單元
230‧‧‧遊戲主機
232‧‧‧計算裝置
234、236、238‧‧‧請求應用程式
234A、236A、238A‧‧‧先前最大順序數值指示符(MSVI)
241A、241B、241C‧‧‧資訊請求
243A、243B、243C‧‧‧資訊
242‧‧‧第一組物件
246‧‧‧第二組物件
248、250、818、826、850‧‧‧最大順序數值指示符
260‧‧‧未改變的物件
262‧‧‧已改變的物件
264‧‧‧已刪除檔案名單
265‧‧‧陣列
300、300A‧‧‧資料結構
312、312A‧‧‧順序指示符
314、320‧‧‧其它資料物件屬性
316‧‧‧檔案名稱屬性
318‧‧‧解析度屬性
322‧‧‧有效負載改變指示 符
324‧‧‧對應的屬性
326‧‧‧媒體有效負載
400、500、600、700‧‧‧方法
410、412、414、416、418、420、522、528、532、534、536、610、612、614、710、712、714、716、718、720、810、812、820、822、828、832、834、838、842‧‧‧步驟
510、512、514、528、816、830、840、846‧‧‧順序指示符
516、540‧‧‧順序指示符數值
518‧‧‧一組物件
520‧‧‧圖上標號說明
524、814‧‧‧物件
526、812‧‧‧狀態
538‧‧‧新物件
844‧‧‧新照片
824‧‧‧最大順序指示符欄位
本發明的實施例將以所附的圖在以下詳細說明,其包含以下的參考且其中:第1圖係根據本發明實施例的適合操作的說明性起動裝置。
第2A圖係根據本發明實施例描述說明性操作環境的方塊圖。
第2B圖係根據本發明實施例說明儲存在一從屬裝置上的資料物件的態樣,係所維護的刪除名單。
第3A與3B圖係根據本發明實施例說明幾乎無限制變化資料結構的二表示,其包括一用於接收順序識別欄位的保留位址。
第4圖根據本發明實施例說明從屬裝置的一說明性操作流程圖。
第5圖根據本發明實施例的一流程圖,其關於追蹤從屬裝置說明性的操作。
第6圖根據本發明實施例的一流程圖,其描繪一種從屬裝置暴露它自己的內容給潛在的許多請求應用程式。
第7圖根據本發明實施例的一流程圖,其描繪一種應用程式接收關於儲存在從屬裝置上的物件的資訊的說明性方法。
第8圖提供一由本發明一實施例所實行的作為範例處理流程的更詳細的簡介。
400‧‧‧方法
410、412、414、416、418、420‧‧‧步驟

Claims (12)

  1. 一種利用一以物件為基礎的協定以供在一主控裝置與一從屬裝置間之通訊的方法,該方法包含下列步驟:促進與該從屬裝置間的一通訊鏈結(communications link),該從屬裝置包括:(1)在該從屬裝置上的一或更多物件,該一或更多物件係個別關聯於一組對應的物件順序指示符,其中該物件順序指示符為一組數值內的一數值,在該組數值內的任二數值,一較後的數值至少係和一先前的數值一樣大;及(2)一目前最大順序數值指示符,該目前最大順序數值指示符指示該從屬裝置上最大的物件順序指示符;依據一先前最大順序數值指示符來傳遞由該主控裝置所起始的一請求,該請求針對關於該從屬裝置上之物件的資訊,該先前最大順序數值指示符指示該從屬裝置先前何時與該主控裝置通訊,其中該先前最大順序數值指示符係由該主控裝置所提供;依據利用該先前最大順序數值指示符和該等物件順序指示符來接收可滿足該請求之關於物件的資訊,其中利用關聯於該等物件順序指示符之該先前最大順序數值指示符的步驟包括決定一第一組物件,該第一組物件之對應物件順序指示符超過該先前最大順序數值指示符; 根據由該主控裝置所起始之該請求及該所接收可滿足該請求之關於物件的資訊,進行下列之一或更多者:(1)傳達該第一組物件之參考給該主控裝置;及(2)傳達該第一組物件給該主控裝置;以及以該目前最大順序數值指示符來更新該先前最大順序數值指示符,其中更新該先前最大順序數值指示符之步驟包含從該從屬裝置接收該從屬裝置之目前最大順序數值指示符,以及儲存該從屬裝置之目前最大順序數值指示符成為該先前最大順序數值指示符。
  2. 如申請專利範圍第1項所述之方法,其中該主控裝置包括一計算裝置且該從屬裝置包括一媒體播放裝置。
  3. 如申請專利範圍第2項所述之方法,其中該媒體播放裝置係可播放下列之一或更多者的一裝置:語音檔、影像檔、或資料檔。
  4. 如申請專利範圍第1項所述之方法,更包含下列步驟:辨識一組已從該主控裝置刪除的物件。
  5. 一種非過渡性機器可讀取媒體,該非過渡性機器可讀取媒體上具有一組一或更多的資料物件、一資料結構、 及一最大順序數值指示符以協助呈現與該資料物件相關的資訊,該資料結構個別地關聯於各資料物件,該最大順序數值指示符關聯於該組一或更多資料物件,該資料結構包含:一第一組屬性(properties),該第一組屬性關聯於一第一資料物件;及一順序識別欄位,該順序識別欄位也對應至該第一資料物件,且該順序識別欄位被植入:(1)一物件順序指示符,該物件順序指示符指示相關於該最大順序數值指示符之該第一資料物件何時發生一改變,該改變包括下列之一或更多者:建立一新的資料物件,以及對關聯於該第一資料物件之一屬性的改變;以及(2)被刪除物件之指示,該等指示包括對應物件順序指示符,該等對應物件順序指示符指示一物件在相對於至少該最大順序數值指示符之何時被刪除;其中該最大順序數值指示符被更新為至少與該資料結構之該等物件順序指示符之任意者一樣大。
  6. 一種用於辨識一從屬裝置上新建立的物件、修改過的物件、或已刪除的物件中之一或更多者的方法,該方法包含利用如申請專利範圍第5項所述的資料結構。
  7. 一種非過渡性機器可讀取媒體,該非過渡性機器可讀取媒體上具有一組機器可讀取的指令,當該等指令由一從屬裝置處理時導致該從屬裝置執行一方法,該方法暴露與一組資料物件有關的資訊給在一主控裝置上執行中的一或更多請求應用程式,該方法包含下列步驟:從該主控裝置上之該等請求應用程式接收複數個獨立的物件資訊請求,該等物件資訊請求之各者係針對在該組資料物件中的至少一部份資料物件的資訊;從各請求辨識一對應之先前最大順序數值指示符,該對應之先前最大順序數值指示符指示該從屬裝置最近何時與一對應請求應用程式通訊;及利用先前儲存之關聯於該對應之先前最大順序數值指示符的物件順序指示符來滿足該等複數個物件資訊請求的各者,使得各請求應用程式接收的資訊僅關於其對應物件順序指示符滿足針對於該先前最大順序數值指示符之條件的那些資料物件,其中滿足針對於該先前最大順序數值指示符之條件的步驟包含決定複數個資料物件,該等複數個資料物件的對應物件順序指示符超過從各請求所辨識之該對應之先前最大順序數值指示符。
  8. 如申請專利範圍第7項所述之媒體,其中該物件順序指示符是在一組單調地增加的數值中的一數值。
  9. 如申請專利範圍第8項所述之媒體,其中該物件順序指示符指示相對於其它資料物件的改變來說,該改變係何時發生的。
  10. 如申請專利範圍第8項所述之媒體,其中該物件順序指示符指示相對於其它資料物件的改變來說,該改變係何時發生的,即使當一時間戳記無法指示一獨特的順序位置時亦然。
  11. 如申請專利範圍第7項所述之媒體,其中該等機器可讀取的指令更包括用於辨識已刪除物件的指令,該等指令也用於辨識相對於該先前最大順序數值指示符來說,該些已刪除物件何時被刪除。
  12. 如申請專利範圍第7項所述之媒體,其中該等機器可讀取的指令更包括從該從屬裝置傳達該等資料物件的至少一部份的一或多參考至該主控裝置的指令。
TW096102535A 2006-03-03 2007-01-23 辨識媒體裝置內容之改變 TWI477990B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US11/368,145 US8769033B2 (en) 2006-03-03 2006-03-03 Identifying changes to media-device contents

Publications (2)

Publication Number Publication Date
TW200817940A TW200817940A (en) 2008-04-16
TWI477990B true TWI477990B (zh) 2015-03-21

Family

ID=38472645

Family Applications (1)

Application Number Title Priority Date Filing Date
TW096102535A TWI477990B (zh) 2006-03-03 2007-01-23 辨識媒體裝置內容之改變

Country Status (7)

Country Link
US (1) US8769033B2 (zh)
EP (1) EP1997013B1 (zh)
JP (1) JP5149815B2 (zh)
KR (1) KR101467583B1 (zh)
CN (1) CN101395591B (zh)
TW (1) TWI477990B (zh)
WO (1) WO2007106234A1 (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7945734B2 (en) * 2007-08-10 2011-05-17 Eastman Kodak Company Removable storage device with code to allow change detection
JP4944176B2 (ja) * 2009-09-24 2012-05-30 株式会社バッファロー ローカルサーバ及びコンテンツリスト更新方法
US8832341B2 (en) 2011-09-27 2014-09-09 International Business Machines Corporation Dynamically determining a primary or slave assignment based on receiving a power signal from the cable at the port of a device
JP5890674B2 (ja) * 2011-12-07 2016-03-22 キヤノン株式会社 情報処理装置、情報処理方法
US10521449B1 (en) * 2014-12-17 2019-12-31 Amazon Technologies, Inc. Cross-region replication architecture
CN114077448A (zh) * 2020-08-11 2022-02-22 深圳云天励飞技术股份有限公司 数据管理方法及相关设备

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW373151B (en) * 1996-11-04 1999-11-01 Sun Microsystems Inc Method and apparatus for thread synchronization in object-based systems
JP2001306376A (ja) * 2000-04-26 2001-11-02 Nikon Corp データファイル管理用記録媒体、データファイル管理装置、画像データの伝送方法およびデータの伝送方法
US20030187859A1 (en) * 2002-03-29 2003-10-02 Panasas, Inc. Recovering and checking large file systems in an object-based data storage system
US20040024795A1 (en) * 2000-04-10 2004-02-05 Hugh Hind System and method for synchronizing data records between multiple databases
CN1516418A (zh) * 2002-12-20 2004-07-28 �Ҵ���˾ 在客户机/服务器环境中高效处理复帧数据的方法和系统
US20040221044A1 (en) * 2003-05-02 2004-11-04 Oren Rosenbloom System and method for facilitating communication between a computing device and multiple categories of media devices
JP2005507130A (ja) * 2001-10-22 2005-03-10 アップル・コンピューター・インコーポレーテッド メディアプレーヤーのためのインテリジェントなシンクロ操作
JP2005521938A (ja) * 2002-03-29 2005-07-21 グッド テクノロジー インコーポレイテッド データサービスによるデータ処理装置の全無線同期システム及び方法
US20050198084A1 (en) * 2004-03-05 2005-09-08 Samsung Electronics Co., Ltd. System and method of synchronizing data between a server and a client
JP2005537579A (ja) * 2002-09-03 2005-12-08 ノキア コーポレイション 中断された同期プロセスに対処してデータを同期させる方法、装置、システム
US20060003806A1 (en) * 2004-07-02 2006-01-05 Sbc Knowledge Ventures, L.P. Phone synchronization device and method of handling personal information

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5710922A (en) * 1993-06-02 1998-01-20 Apple Computer, Inc. Method for synchronizing and archiving information between computer systems
US5966714A (en) * 1995-04-28 1999-10-12 Intel Corporation Method and apparatus for scaling large electronic mail databases for devices with limited storage
US5661665A (en) * 1996-06-26 1997-08-26 Microsoft Corporation Multi-media synchronization
US5974238A (en) * 1996-08-07 1999-10-26 Compaq Computer Corporation Automatic data synchronization between a handheld and a host computer using pseudo cache including tags and logical data elements
JP3042600B2 (ja) 1996-08-22 2000-05-15 日本電気株式会社 分散ファイルの同期方式
US6052735A (en) * 1997-10-24 2000-04-18 Microsoft Corporation Electronic mail object synchronization between a desktop computer and mobile device
US6449622B1 (en) * 1999-03-08 2002-09-10 Starfish Software, Inc. System and methods for synchronizing datasets when dataset changes may be received out of order
US6694335B1 (en) * 1999-10-04 2004-02-17 Microsoft Corporation Method, computer readable medium, and system for monitoring the state of a collection of resources
KR100379457B1 (ko) 1999-10-08 2003-04-10 엘지전자 주식회사 개인 정보 관리 방법
JP3963417B2 (ja) * 1999-11-19 2007-08-22 株式会社東芝 データ同期処理のための通信方法および電子機器
US6643652B2 (en) * 2000-01-14 2003-11-04 Saba Software, Inc. Method and apparatus for managing data exchange among systems in a network
US6671757B1 (en) * 2000-01-26 2003-12-30 Fusionone, Inc. Data transfer and synchronization system
US20010042099A1 (en) * 2000-02-02 2001-11-15 Doongo Technologies, Inc. Apparatus and methods for optimizing traffic volume in wireless email communications
WO2001058141A1 (en) * 2000-02-04 2001-08-09 Ideo Product Development Inc. System and method for synchronization of image data between a handheld device and a computer
KR20020003674A (ko) 2000-06-24 2002-01-15 정승채 데이타 동기화 시스템 및 그 방법
US6832373B2 (en) * 2000-11-17 2004-12-14 Bitfone Corporation System and method for updating and distributing information
US6931454B2 (en) * 2000-12-29 2005-08-16 Intel Corporation Method and apparatus for adaptive synchronization of network devices
US20040058710A1 (en) * 2001-05-25 2004-03-25 Timmins Timothy A. Technique for synchronizing data in user devices through an information service
US7668535B2 (en) * 2001-07-09 2010-02-23 Palm, Inc. Notification infrastructure for sending device-specific wireless notifications
US7243163B1 (en) * 2001-08-07 2007-07-10 Good Technology, Inc. System and method for full wireless synchronization of a data processing apparatus with a messaging system
US7149813B2 (en) * 2001-08-14 2006-12-12 Microsoft Corporation Method and system for synchronizing mobile devices
US7032033B1 (en) * 2001-11-30 2006-04-18 Microsoft Corporation Handling collisions during synchronization of data between client and server computers
US20030112849A1 (en) * 2001-12-18 2003-06-19 Gorday Paul Edward Efficient quadrature code position modulation
US6882993B1 (en) * 2002-01-28 2005-04-19 Oracle International Corporation Incremental refresh of materialized views with joins and aggregates after arbitrary DML operations to multiple tables
SE525748C2 (sv) * 2002-10-28 2005-04-19 Devlabs Ab Förfarande för direkta utskrifter i nätverk
US6996818B2 (en) * 2002-11-22 2006-02-07 Bitfone Corporation Update system for facilitating software update and data conversion in an electronic device
US7610387B1 (en) * 2003-11-12 2009-10-27 Cisco Technology, Inc. Method and apparatus for providing sticky bindings using version vectors
US20050203905A1 (en) * 2004-03-12 2005-09-15 Samsung Electronics Co., Ltd. Method of synchronizing data between server and user terminal using messenger service system and system using the same
US8209537B2 (en) * 2004-03-30 2012-06-26 Hewlett-Packard Development Company, L.P. Secure information distribution between nodes (network devices)
US7539889B2 (en) * 2005-12-30 2009-05-26 Avega Systems Pty Ltd Media data synchronization in a wireless network
US9058372B2 (en) * 2006-08-23 2015-06-16 Kyocera Corporation Database management in a wireless communication system

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW373151B (en) * 1996-11-04 1999-11-01 Sun Microsystems Inc Method and apparatus for thread synchronization in object-based systems
US20040024795A1 (en) * 2000-04-10 2004-02-05 Hugh Hind System and method for synchronizing data records between multiple databases
JP2001306376A (ja) * 2000-04-26 2001-11-02 Nikon Corp データファイル管理用記録媒体、データファイル管理装置、画像データの伝送方法およびデータの伝送方法
JP2005507130A (ja) * 2001-10-22 2005-03-10 アップル・コンピューター・インコーポレーテッド メディアプレーヤーのためのインテリジェントなシンクロ操作
US20030187859A1 (en) * 2002-03-29 2003-10-02 Panasas, Inc. Recovering and checking large file systems in an object-based data storage system
JP2005521938A (ja) * 2002-03-29 2005-07-21 グッド テクノロジー インコーポレイテッド データサービスによるデータ処理装置の全無線同期システム及び方法
JP2005537579A (ja) * 2002-09-03 2005-12-08 ノキア コーポレイション 中断された同期プロセスに対処してデータを同期させる方法、装置、システム
CN1516418A (zh) * 2002-12-20 2004-07-28 �Ҵ���˾ 在客户机/服务器环境中高效处理复帧数据的方法和系统
US20040221044A1 (en) * 2003-05-02 2004-11-04 Oren Rosenbloom System and method for facilitating communication between a computing device and multiple categories of media devices
CN1551000A (zh) * 2003-05-02 2004-12-01 方便计算设备和多种媒体设备之间的通信的方法和系统
US20050198084A1 (en) * 2004-03-05 2005-09-08 Samsung Electronics Co., Ltd. System and method of synchronizing data between a server and a client
US20060003806A1 (en) * 2004-07-02 2006-01-05 Sbc Knowledge Ventures, L.P. Phone synchronization device and method of handling personal information

Also Published As

Publication number Publication date
WO2007106234A1 (en) 2007-09-20
JP5149815B2 (ja) 2013-02-20
EP1997013A1 (en) 2008-12-03
EP1997013B1 (en) 2019-01-09
EP1997013A4 (en) 2016-06-08
CN101395591A (zh) 2009-03-25
US20070208818A1 (en) 2007-09-06
TW200817940A (en) 2008-04-16
CN101395591B (zh) 2011-11-16
JP2009528617A (ja) 2009-08-06
US8769033B2 (en) 2014-07-01
KR101467583B1 (ko) 2014-12-10
KR20080106534A (ko) 2008-12-08

Similar Documents

Publication Publication Date Title
JP6130890B2 (ja) データ同期化
US8346796B2 (en) System for searching property listings based on location
CN101627382B (zh) 根据同步偏好与主机设备的数据同步
TWI477990B (zh) 辨識媒體裝置內容之改變
US8370402B2 (en) Dual representation of stored digital content
CN101802808B (zh) 从脚本和其他编程环境访问设备主存的服务
US20140032619A1 (en) Network repository for metadata
CN101960426A (zh) 具有直接用户访问的存储装置
CN102043664A (zh) 信息处理设备和系统、功能管理方法和计算机程序
EP3087487A1 (en) Providing access to a cloud based content management system on a mobile device
CN101632063A (zh) 用于优化设备操作的设备特定内容索引
CN102932523A (zh) 实施于通讯装置的媒体内容管理系统与方法
US20120109952A1 (en) System, method, and computer program for remote management of digital content
WO2005048132A1 (en) Content based partial download
WO2015002585A1 (en) Providing an electronic book to a user equipment
US8713059B2 (en) Management of computer-file sharing between at least two devices
JP2011129059A (ja) 情報処理装置、通信システム、制御方法及び制御プログラム
JP2004246522A (ja) 分散コミュニティシステム及び分散コミュニティ端末
JP2002373143A (ja) デバイス用資源更新システム、デバイス用資源更新方法および情報記録媒体
JP2004213314A (ja) リソース管理装置,及びリソース情報一覧画面表示処理プログラムを記憶した記憶媒体
JP2016024549A (ja) 電子マガジン作成装置、電子マガジン作成システム、電子マガジン作成方法およびコンピュータプログラム
CA2703504C (en) System and method for managing file catalogs on a wireless handheld device
IL224733A (en) Method and system for managing information and compatible computer software and readable memory means compatible computer
JP2011186989A (ja) 情報管理システム、情報管理装置及びプログラム
JP2014056498A (ja) コンテンツ表示装置、コンテンツ管理装置、コンテンツ配信システム、コンテンツ表示方法、およびプログラム

Legal Events

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