JP2008545181A - インターネットオペレーティングシステム - Google Patents
インターネットオペレーティングシステム Download PDFInfo
- Publication number
- JP2008545181A JP2008545181A JP2008511348A JP2008511348A JP2008545181A JP 2008545181 A JP2008545181 A JP 2008545181A JP 2008511348 A JP2008511348 A JP 2008511348A JP 2008511348 A JP2008511348 A JP 2008511348A JP 2008545181 A JP2008545181 A JP 2008545181A
- Authority
- JP
- Japan
- Prior art keywords
- server
- user
- operating system
- client device
- interos
- Prior art date
- Legal status (The legal status 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 status listed.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/2866—Architectures; Arrangements
- H04L67/30—Profiles
- H04L67/306—User profiles
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/04—Protocols specially adapted for terminals or networks with limited capabilities; specially adapted for terminal portability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/34—Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/549—Remote execution
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
- Stored Programmes (AREA)
Abstract
サーバ上に格納されたデータ及びアプリケーションソフトウェアの使用がクライアント装置からの要求に応じてクライアント装置に選択的にダウンロードされる、サーバベースのアプリケーションがクライアント装置上においてアクセスされ実行されることを可能にするインターネットベースのオペレーティングシステムである。サーバとクライアント装置の間において安全な通信が容易に確立され得るため、遠隔データアクセスの多数の伝統的な問題が克服される。典型的にはジャバコードであるアプリケーションソフトウェアは、固有にウイルスに耐久性があるプログラミング言語を提供する。クライアント装置を運用する最終ユーザは、ソフトウェアを購入して自分のマシン上にインストールして維持する必要なしに幅広い種類のアプリケーションソフトウェアにアクセスし得る。使用が容易なGUIを使用して、ユーザはアプリケーションを選択し、既存のファイルを開き、又は新規なファイルを作成する。アプリケーション実行コードは、典型的にはXMLであるマークアップ言語のストリーム内に埋め込まれたリンクにより識別される。前記オペレーティングシステムは、複合アプリケーションが限られたメモリ/記憶能力を有する小型軽量クライアント上において実行されることを可能にする。
Description
(関連出願)
本出願は、2005年5月10日出願の米国仮出願シリアル番号60/679,224、35U.S.C.§119(e)に従って優先権を主張する。
本出願は、2005年5月10日出願の米国仮出願シリアル番号60/679,224、35U.S.C.§119(e)に従って優先権を主張する。
(発明の分野)
本発明は、オペレーティングシステム及びグラフィカルユーザインターフェースに関し、特に、アプリケーションプログラム、文書及び媒体のカスタマイズされたレポジトリに、動的かつ選択的にユーザのアクセスを可能にする安全なウェブベースのマルチタスク・グラフィカルユーザインターフェースを含むウェブベースのオペレーティングシステムに関する。
本発明は、オペレーティングシステム及びグラフィカルユーザインターフェースに関し、特に、アプリケーションプログラム、文書及び媒体のカスタマイズされたレポジトリに、動的かつ選択的にユーザのアクセスを可能にする安全なウェブベースのマルチタスク・グラフィカルユーザインターフェースを含むウェブベースのオペレーティングシステムに関する。
(発明の背景)
コンピュータが広く存在するようになるにつれて、人々は次第にコンピュータを基礎的なツールとして、並びに通信、遊興及び娯楽装置のための装置として頼り始めた。実際に、コンピュータは多くの他の機能を実行し、多数の他の役割を果たす。コンピュータ使用の急増は、主として過去数年に亘る費用における急激な減少が原因である。小型化は、コンピュータの処理能力が徐々に小さい空間にパッケージ化されることをも可能にし、その結果、ユーザが移動可能になることを可能にした。従って、ユーザは徐々に小さくなる装置上において利用可能にされた高度化されたアプリケーションを要求する。
コンピュータが広く存在するようになるにつれて、人々は次第にコンピュータを基礎的なツールとして、並びに通信、遊興及び娯楽装置のための装置として頼り始めた。実際に、コンピュータは多くの他の機能を実行し、多数の他の役割を果たす。コンピュータ使用の急増は、主として過去数年に亘る費用における急激な減少が原因である。小型化は、コンピュータの処理能力が徐々に小さい空間にパッケージ化されることをも可能にし、その結果、ユーザが移動可能になることを可能にした。従って、ユーザは徐々に小さくなる装置上において利用可能にされた高度化されたアプリケーションを要求する。
例えば、個人用データ補助装置(PDA)は、小型オペレーティングシステムにより現在利用可能であり、従来伝統的なデスクトップコンピュータ上でのみ利用可能であったアプリケーションソフトウェアを実行することが可能である。携帯電話ですら、たった数年前には想像もつかなかったデータ処理能力を現在有している。
歴史的に、ほとんどの計算は、取り付けられた「データ処理能力のない」(すなわち常駐の計算能力がたとえあったとしても少ししか有しない周辺機器の端末)端末を有する中央のメインフレームコンピュータ上において実行された。中央で実行され、アプリケーションソフトウェアはメインフレーム上で動作し(すなわち実行され)、ユーザは取り付けられた端末から当該ソフトウェアと相互作用した。端末は、典型的にテキストベースであり、端末とメインフレームの間で通信は、一般的に専用のケーブル上において周知のRS−232プロトコルのようなシリアル通信プロトコルを経由した。一般的にテキストの通信は限られた通信帯域幅のみを必要とするため、通信速度は制限されていたが重大な障害ではなかった。
コンピュータアプリケーションソフトウェアが高度化において向上し、グラフィカルユーザインターフェース(GUI)がより有名になるにつれて、必要とされる通信帯域幅は顕著に増加した。幸いにも、コンピュータハードウェアの費用は、個人のコンピュータ上の元の位置で、高度なソフトウェアアプリケーションを実行することが可能になる点まで減少した。必要な場合には、通信はデータを送信し、メインフレームからデータを受信するために提供され得る。
21世紀の初頭において、アプリケーションソフトウェアの大部分は、典型的にインターネット又は他のそのようなネットワークを介して、遠隔サーバへ提供されているリンケージを備えた独立型計算装置上において実行されている。
しかしながら、これまで以上に高度なアプリケーションプログラムによって要求される増加するハードウェア要件とより小さい(例えば携帯型)計算装置の衝突は、「メインフレーム」に相互接続された遠隔に分散した装置によるアプリケーションソフトウェアの中央の実行の概念への帰還を再び示唆した。この問題をより良く示すのは、現在の携帯電話ハンドセットにおける他はない。現在の世代のハンドセットは、高解像度LCD又はより小さい表示部を使用して実施されたグラフィカルユーザインターフェースを有する。しかしながら、軽量の電話に対する需要は、ハンドセットにおいて利用可能な処理能力及び保存能力の両方を制限する。よって、現世代のハードウェア装置が十分な処理能力を有し得る一方、それらが現代のアプリケーションソフトウェアを保存するのに十分な大容量記憶装置を提供することが未だできない。よって、遠隔サーバ上においてアプリケーションソフトウェアを保存し、そこに特定のコンピュータデバイス(例えば携帯電話機又はスマート端末として機能するPDA)がアクセスすることを可能にすることが非常に望ましい。
(発明の要旨)
本発明のシステム及び方法は、サーバ上に格納されたアプリケーションソフトウェアがクライアント装置のユーザにそこからの要求時に選択的にダウンロードされ得るインターネットベースのオペレーティングシステムを提供する。このことは、サーバベースのアプリケーションが、そこから遠隔に位置するクライアント装置上においてアクセスされその後実行されることを可能にする。安全な通信はサーバとクライアント装置の間において容易に構築され得るので、遠隔データアクセスの多くの従来の問題は克服される。
本発明のシステム及び方法は、サーバ上に格納されたアプリケーションソフトウェアがクライアント装置のユーザにそこからの要求時に選択的にダウンロードされ得るインターネットベースのオペレーティングシステムを提供する。このことは、サーバベースのアプリケーションが、そこから遠隔に位置するクライアント装置上においてアクセスされその後実行されることを可能にする。安全な通信はサーバとクライアント装置の間において容易に構築され得るので、遠隔データアクセスの多くの従来の問題は克服される。
本明細書において使用されるように、アプリケーションソフトウェアは、オフィス/生産性ソフトウェア(例えばワードプロセッサ、表計算ソフトなど)、データベース、通信、マルチメディア、画像化及びゲームのカテゴリーからのアプリケーションを含む。典型的には、アプリケーションソフトウェアは、本質的にウイルスに耐えられるプログラミング言語を提供するジャバ(Java)で書かれる。サーバから遠隔に位置付けられたクライアント装置を操作する最終ユーザは、その結果自己のマシン上のソフトウェアを購入し、インストールし維持する必要なしに幅広い種類のアプリケーションソフトウェアにアクセスして実行し得る。使いやすいインターフェース(すなわちGUI)を使用することにより、ユーザは容易に適切なアプリケーションを選択し、既存のファイル(例えば文書、フォルダ等)を開き又は新しいファイルを作成し得る。前記インターフェースは、いくつかのアプリケーションをマルチタスクにすることを可能にする。アプリケーションソフトウェア(すなわち、実行可能コード)は、典型的にはXML又はその派生物若しくは同等物であるマークアップ言語のストリームにより定義されるページ内に組み込まれる。実行可能コードは、XMLストリーム内に組み込まれるタグのようなリンクによって一般に参照される。本発明のシステムは、複合アプリケーションが制限されたメモリ/記憶容量を有する小さい(例えば「薄い」)クライアント装置上において実行されることを可能にする。サーバは、ユーザのファイルのための安全制御と共に記憶装置を提供する。
本発明のインテロス(Interos)オペレーティングシステムは、それによりカスタマイズされたGUIがクライアント装置上において利用可能にされることを可能にするユーザ嗜好を維持する。
以前に知られた少なくとも三つの手法及び技術が、インターネットベースのオペレーティングシステムを効果的にするものを実行するための新規な方法において利用される。新規なオペレーティングシステムの一実施例は、インターネット及びオペレーティングシステムから派生された頭字語インテロスである。
従って、本発明の目的は、ローカルクライアント計算装置から離れたサーバ上において、ソフトウェアアプリケーションプログラムを格納するためのインターネットベースのオペレーティングシステムを提供することである。
本発明の更なる目的は、遠隔サーバとローカルコンピュータ装置の間の通信は例えばインターネットのようなネットワークによる、ローカル計算装置から離れてアプリケーションソフトウェアを格納することを可能にするための方法及びシステムを提供することである。
本発明の別の目的は、ユーザがカスタマイズ可能なグラフィカルユーザインターフェース(GUI)を有するインターネットベースのオペレーティングシステムを提供することである。
本発明の更なる目的は、ユーザとの相互作用を提供するための色のボタンを使用する使いやすく単純化されたGUIを有するインターネットベースのオペレーティングシステムを提供することである。
後続の詳細な説明との関係において考慮されるとき、添付の図面を参照することにより本発明の完全な理解が得られる。
(好適な実施形態の詳細な説明)
本発明は、サーバ上の種々のアプリケーションプログラム及び他のリソースの幅広い範囲へのユーザメニューのような選択的なアクセスを可能にする、安全なグラフィカルユーザインターフェース(GUI)を含む仮想的なインターネットベースのオペレーティングシステムを提供する。
本発明は、サーバ上の種々のアプリケーションプログラム及び他のリソースの幅広い範囲へのユーザメニューのような選択的なアクセスを可能にする、安全なグラフィカルユーザインターフェース(GUI)を含む仮想的なインターネットベースのオペレーティングシステムを提供する。
オペレーティングシステムは、ほとんどのコンピュータ上において動作する最も重要なプログラムである。それぞれの汎用コンピュータは、他のプログラムを実行するためにオペレーティングシステムを利用しなければならない。オペレーティングシステムは、周辺機器(すなわちキーボード、ポインティングデバイス又は他の入力装置)からの入力を認識し、表示画面に情報を書き込み、記憶装置上においてファイル及びディレクトリの追跡を維持し、ディスクドライブ及びプリンタのような周辺機器を制御するような基本タスクを実行する。
大規模なコンピュータシステムにおいて、オペレーティングシステムはさらに大きな責任及び力を有する。それは、異なるプログラム及びユーザが互いに妨げることなく同時に実行することを確実にする交通巡査のようである。オペレーティングシステムは、さらにセキュリティについて大きな責任があり、許可されていないユーザがシステムにアクセスしないことを保証している。
オペレーティングシステムは、その頂点においてアプリケーションプログラムと呼ばれる他のプログラムが動作し得るソフトウェアプラットフォームを提供する。しかしながら、各アプリケーションプログラムは、特定のオペレーティングシステムの頂点において動作するように書かれなければならない。従って、オペレーティングシステムの選択は、動作し得るアプリケーションを大きく決定する。PCにとって、歴史的に最も人気のあるオペレーティングシステムはDOS、OS/2及びウィンドウズ(Windows)であるが、リナックス(Linux)のような他のものが利用可能である。
コンピュータユーザは、通常、コマンドのセットを通じて、オペレーティングシステムと相互作用する。例えば、DOSオペレーティングシステムは、ファイルをコピーしファイルの名前を変更するために、それぞれコピー(COPY)及びリネーム(RENAME)のようなコマンドを含む。コマンドは、コマンドプロセッサ又はコマンドラインインタープリタと呼ばれるオペレーティングシステムの一部によって、受け取られて実行される。グラフィカルユーザインターフェースは、ユーザがタッチパッドを使用することによって、又はコンピュータマウス若しくは他のそのような装置により、画面上に現れる物体においてポイントし、かつクリックすることによってコマンドを入力することを可能にする。
全ての伝統的なオペレーティングシステムは、特定のローカル計算装置上において動作する。装置は縮小したため、伝統的なオペレーティングシステムも、例えばPDA又は携帯電話機の制限されたリソースにおいて操作するために縮小した。従来のコンピュータの使用において、各アプリケーションプログラムは、計算装置に関連したローカルの記憶装置上に所在し、典型的にはGUI及びポインティングデバイスを使用して、ユーザによるコマンドに際して実行される。
本明細書の以上において述べられたように、この従来の計算環境は多くの問題に苦しむ。これらの問題は、本発明のシステム及び方法を使用することによって容易に克服される。
ローカル計算装置(すなわちクライアント)が図形的表示、GUI入力、ウェブブラウザ(例えば、マイクロソフト(Microsoft)インターネットエクスプローラ(Internet Explorer、商標)又は同様のもの)及びネットワーク接続機能を有することは、開示の目的のために仮定される。さらに、開示の目的のために、ネットワーク接続がインターネットを含むことが仮定される。インターネット及びワールドワイドウェブ(www又はウェブ)の語もまた、本明細書において相互交換可能に使用される。
混合されたテキストと図形情報を表示画面上に提示することは良く知られている。最も基礎的な実施において、このことは一連の拡張マークアップ言語(XML)ライブラリを使用して行われる。ウェブブラウザはXMLコマンドストリームを分析し、続いてXMLコマンドストリームにより定義されたコンテンツが計算装置の表示画面上に表示される。複雑な図形表示がXMLを使用して容易に生成され得るが、XMLは一方向の記述的言語である。すなわち、一旦XMLコマンドストリームがサーバから送信されると、ユーザに表示されるコンテンツを動的に変更するための設備は存在しない。XMLはマークアップコマンドの特定のセットを定義するが、本明細書においてXMLの語は、任意の類似のマークアップ言語(例えばHTML、XHTML等)を指すために一般的に使用される。
静的なXML表現の制限を克服するために、共通ゲートウェイインターフェース(CGI)のようなプログラミング技術が開発された。CGIは、ワールドワイドウェブサーバとCGIプログラム(すなわちCGI仕様に一致するデータを受け取って返すように設計された任意のプログラム)の間において情報を転送するための仕様である。CGI言語は、例えばC、Perl(商標)、ジャバ(商標)、Visual Basic(ビジュアルベーシック、商標)、ASP(商標)、PHP等を含む任意のプログラム言語により書かれ得る。CGIプログラムは、ウェブサーバがユーザと動的に相互作用するための方法を提供する。例えば、フォームを含むHTMLページは、フォームが提出されるとフォームのデータを処理するためのCGIプログラムを使用し得る。CGIプログラムはサーバにおいて実行され、クライアントにおいては実行されない(すなわちCGIはサーバ側のアプリケーションである)ことに留意すべきである。
CGIに伴う一つの問題は、CGIスクリプトが実行される各回に、新たな処理が開始されることである。忙しいウェブサイトにとっては、このことはサーバを著しく遅延させ得る。この問題は、CGIに対するFastCGI(ファストCGI)拡張又は他の既知の技術を利用することにより克服され得る。
CGIは、動的インターフェース言語として考えられ得る。CGIは、例えばユーザが事務管理部門データベースとインターフェースを取り、又はユーザに対するサーバ出力を書式化する際に有用であるが、CGI内には、本発明のシステム及び方法により提供されるようにクライアント上のソフトウェアアプリケーションの実行コードを動的に選択して安全にダウンロードするための設備は存在しない。
CGI技術はそのような限定された特徴しか提供しないため、ウェブページの動的な相互作用による生成のための他の代替例が見付けられなければならない。現在、そのようなソリューションのほとんどは、ジャバ(Java)又はジャバスクリプトに依存する。ジャバは、プラットフォームから独立したオブジェクト指向プログラミング言語である(すなわち、同一のジャバプログラムは変更なしに全てのハードウェアプラットフォーム上において動作する)。ジャバは元々サンマイクロシステムズ(Sun Microsystems)により開発され、クライアント及びサーバ処理の両方のために幅広く使用されている。ジャバは組み込まれて動作するように設計され、PDA、セルラー電話等のために設計されたアプリケーションにとって理想的にされた。
ジャバプログラムはウェブページから呼び出され、又は独立して動作し得る。ウェブページから起動するとき、プログラムはジャバ「アプレット」と呼ばれる。非ウェブベースジャバプログラムがユーザのマシン上において動作されるとき、プログラムはジャバ「アプリケーション」である。
ジャバアプレットは、本発明に特に関連している。これらのプログラムは、命令を解釈する(すなわちプログラムを実行する)ジャババーチャルマシン(JVM)と共に、サーバからダウンロードされてブラウザから実行される。ジャババーチャルマシンは、ブラウザプラグインとして、又は任意の他の方法により実施される。ジャバ以外の言語(例えばフラッシュ(Flash))もまた使用され得ることが、さらに認識されるであろう。いずれの場合においても、実行されるべきコードの言語に一致するランタイム環境(RTE)が提供されなければならない。本明細書において使用されるように、「バーチャルマシン」及び「ランタイム環境」の語は、相互変更可能に使用されている。ジャバプログラムのソースコード(例えばアプレット)は、「バイトコード」と呼ばれる中間言語にコンパイルされる。バイトコードを実行するために、マシンコードにプリコンパイルされるか、ブラウザにより実行されるアプレットと同様に必要とされる直前にJVMにより解釈されなければならない。ジャバは元々1991年に、セットトップボックス及び他の消費者指向装置において使用されるアプリケーションのような組み込み済アプリケーション用の言語として開発された。ジャバアプリケーションとアプレットはクライアント側において穏やかに成功したが、サーバ上のジャバは非常に普及した。
ジャバは十分に発達したプログラミング言語である一方、ジャバスクリプトは範囲において遥かに限られたスクリプト言語である。ジャバスクリプトソースコードはバイトコードにコンパイルされず、むしろHTMLページ内に組み込まれて主にページ自体の上の要素を操作するために使用される。例えば、ジャバスクリプトはページ上のドロップダウンメニュー又は他のインタラクティブイベントを提供するために広く使用される。ジャバスクリプトは、ウェブブラウザ及び他のブラウザ型アプリケーションにおいて広くサポートされている。ジャバスクリプトはHTMLページに相互作用機能を付加するために使用され得る。HTMLは表示言語であってプログラミング言語ではないため、前記相互作用機能は別の面では静的である。ジャバスクリプトはジャバより容易に使用されると考えられるが、ジャバほど強力ではなく主にウェブページ上の要素を取り扱う。クライアント装置上において、ジャバスクリプトはHTMLページ内に組み込まれたソースコードとして維持される。
ジャバスクリプトはジャバのプログラミングオーバーヘッドを有しないが、ジャバと連結して使用され得る。例えば、ジャバスクリプトはデータ入力フォームを表示して入力を有効にするために使用され得る一方、ジャバアプレット、ジャバサーブレット又はCGIは情報をより完全に処理する。ジャバスクリプトはまた、ジャバアプレットを共に結合するためにも使用される。しかしながら、ジャバ及び/又はCGIを伴うジャバスクリプト及び他の言語又は技術の実施でさえ、本発明により提供される安全な統合環境においてウェブベースのアプリケーションの実行における機能のレベルを許容することが可能な環境又は技術的基盤を提供することに依然失敗している。
ウェブページの相互作用性及び動的性質をさらに向上させるために、その略語AJAXによってより良く知られる、非同期ジャバスクリプト及びXMLと呼ばれる技術が進化した。AJAXは、インタラクティブウェブアプリケーションを作成するために有用な技術である。その意図は、場面の背後のサーバと少量のデータを交換することにより、ウェブページをユーザにとってより反応良く感じさせることである。ウェブページの一部のみを交換することにより、全体のウェブページはユーザが変更を行う各回に再ロードされる必要がない。このことは、ウェブページの相互作用性、速度及び利用可能性を増加させる。
AJAX技術は、マークアップ及びスタイル情報のためのカスケーディングスタイルシート(CSS)とXHTML(又はHTML)の組み合わせを使用する。
文書オブジェクトモデル(DOM)は、提示された情報を動的に表示してこれと相互作用するために、ジャバスクリプト又はJスクリプトに似たクライアント側スクリプト言語によりアクセスされる。
XMLhttp要求オブジェクトは、ウェブサーバとデータを非同期に交換するために使用される。いくつかのAJAXフレームワーク及び特定の状況において、データをウェブサーバと交換するためにXMLhttp要求オブジェクトの代わりにIフレームオブジェクトが使用される。
予め形式化されたHTML、プレーンテキスト及び他の当業者に知られたフォーマットを含む任意のフォーマットが機能するが、XMLは、データをサーバに転送し、データをサーバから転送するためのフォーマットとして一般に使用される。AJAXはそれ自体において技術ではないが、技術のグループの使用を一緒に指す語である。
AJAXアプリケーションは、文書オブジェクトモデルメソッドを使用してAJAXアプリケーションのブラウザ内の現在のページを操作することにより、主にクライアントマシン上において実行される。AJAXは、全て変更が行われる各回にHTMLのページ全体をフェッチする必要なしに、レコードの更新若しくは削除、ウェブフォームの拡張、単純な検索クエリの戻し、又は分野ツリーの編集のような多数のタスクのために使用され得る。一般に、サーバに送信されるために小さな要求のみが必要とされ、比較的短い応答が送信し返される。このことは、DHTML技術の使用によるより反応の良いユーザインターフェースを特徴とするより相互作用的なアプリケーションの開発を可能にする。
AJAXは開発者の動的ウェブページをユーザに提示する能力を非常に向上させるが、AJAX技術は、単独で又は他の既知の技術及び手法と共同で、ユーザにより選択されユーザにより制御されるアプリケーションのクライアント側の実行及びサーバベースの記憶装置を可能にすることに依然失敗している。
ハードウェアアナロジーにおいて、マイクロプロセッサ、PAL、PROM等の広範な使用の前に、ハードウェア装置はハードワイヤードであり、そのために設計された機能のみしか実行することができなかった。回路の性能向上又は拡張には、物理的な再配線、構成要素の置換等を必要とした。しかしながら、プログラム可能な装置の導入は、それを以って実施されるハードウェア装置の機能が、例えばPROMを再び焼くこと等によって、再プログラミングにより変更され得ることを意味した。本発明の動的なインタラクティブシステムは、マイクロプロセッサがハードウェア設計にもたらしたものである、サーバ側に格納されたクライアント側のアプリケーションの実行戦略の柔軟性を提供する。換言すれば、本発明のシステムは、再プログラム可能なウェブベースのソフトウェアを可能にする。初めて、サーバに存在する仮想オペレーティングシステムは、例えばインターネットのようなネットワークを横断するウェブブラウザを実行するクライアント装置のユーザの必要物を提供するように利用可能である。
本発明のシステムの例示的な実施形態は、本明細書において説明されるインターネットオペレーティングシステム(インテロス(Interos))により提供され、インテロス・ドット・コム(interos.com)においてユーザにとって利用可能である。インテロスの実施形態は開示の目的のために選択されているが、無数の本発明の概念の代替的実施形態が可能であることが認識されるであろう。結果として、本発明は開示の目的のために選択されたインテロスの実施形態に限られて考えられない。むしろ、本発明は任意かつ全ての他の本発明の概念の実施に及ぶ。
最初に図1を参照すると、一般的に参照番号100により、インテロスシステムの模式的概念図が示されている。ユーザ102は、ハードウェアインターフェース104を介してブラウザ106と相互作用する。ブラウザ106は、インターネット110に接続されたクライアントハードウェア装置108上において実行される。インターネットは開示の目的のために使用されるが、インテロスが任意のネットワーク環境において効果的に機能し得ることが認識されるであろう。結果として、本発明はインターネットに限られないが、任意かつ全てのネットワーク接続形態及び方法を含むように理解される。
サーバ112は、少なくともユーザデータ114と、アプリケーションソフトウェア116と、ユーザ統計、安全又は嗜好情報118を運用する。サーバ112はウェブサーバ層120とCGI層122を有し、立ち代わってこれらはインターネット110とインターフェースを取る。図1において容易に理解され得るように、インテロスは安全性を助成し信頼性のある動作のための堅牢なシステムの開発を可能にする、閉じた自己完結の環境を提供する。
クライアント装置108は、当業者に知られた広い範囲の計算及び通信装置の間から選択され得る。クライアント装置108はパーソナルコンピュータ(PC)、マッキントッシュコンピュータ(Mac)、サーバ、ワークステーション、ラップトップ又はノートブックコンピュータ、リナックス(Linux)又はユニックス(Unix)をサポートする計算装置、パーソナルデータ装置(PDA)、移動体(例えばセルラー)電話、他の無線装置及びインターネット機器等であり得る。任意のプラットフォーム(例えばクライアント装置108)が使用され、本明細書において以下に述べられる必要条件が満たされる限り、極めて小さい組み込みリナックスを有する装置でさえ使用され得る。
クライアント装置108は、ユーザインターフェース(例えばハードウェアインターフェース104)を有し、かつブラウザ106をサポートすることが可能でなければならない。典型的には、クライアント装置108は図示されない表示画面と図示されないデータ入力手段を有する。しかしながら、ハードウェアインターフェース104は、ユーザ102からデータを受け取り、ユーザ102にデータを提供することが可能な多数の他の視覚的、聴覚的又は触覚的装置から構成され得ることが、当業者により理解されるであろう。全てのユーザのアプリケーションソフトウェア116との相互作用、ユーザデータ114との相互作用又はユーザ嗜好若しくは安全情報118との相互作用は、ハードウェアインターフェース104及びブラウザ106を介している。
ブラウザ106は、典型的にはウェブブラウザである。インテロスシステムは、ユーザのデータを適切に維持して保護するように基礎から設計されている。その結果、インテロスシステムは、モジラ(Mozilla、商標)・ゲッコー(Gecko、商標)ベースのブラウザにより最適に動作するように設計されている。そのようなブラウザは、ファイアフォックス(Firefox、商標)、モジラ(商標)、ネットスケープ(Netscape、商標)等を含む。これら及び他のゲッコーベースのブラウザは当業者に良く知られており、本明細書においてはさらに説明されない。これらのゲッコーベースのブラウザは、それにより提供される安全性の特徴のため、最近人気が高まった。本発明のシステムは、マイクロソフト(Microsoft)のインターネットエクスプローラ(Internet Explorer、商標)ファミリーのブラウザを使用しても満足に動作する。前記ブラウザもまた、当業者によく知られていると考えられる。現在存在し又は将来開発され得る他のブラウザが、インテロスシステムにより満足に動作することがさらに可能である。結果として、本発明は開示の目的のために選択されたブラウザに限られない。むしろ、本発明は任意かつ全ての適切なブラウザを含む。
適切なランタイム環境124が、ブラウザ106の一部(例えばプラグイン等)としてか、あるいはクライアント装置108内の他の場所に存在するかのいずれかにて、クライアント108内において利用可能であることが必要である。アプリケーションプログラム116がジャバにより書かれていると仮定すると、ランタイム環境124はジャバ仮想マシンである。他のプログラミング言語(例えばフラッシュ等)が、アプリケーションソフトウェア116を書くために使用され得る。次にランタイム環境124は、もちろん当該言語により書かれた実行コードをサポートしなければならない。プログラミング技術における当業者に良く知られるように、ジャバが選択された言語であるとき、ジャバソースコードがコンパイルされ、実行可能なアプリケーションソフトウェアコード116がジャババイトコードであることがさらに仮定される。
クライアント装置108は、サーバ112への接続を可能にするネットワーク接続を含むことが仮定される。本発明のシステムは、任意の適切なインターフェース機構及び/又は通信技術を使用する任意のネットワークを横断して使用され得る。そのようなインターフェース機構及び通信技術は、例えば適切な形式の電気通信(例えば音声、モデム等)、無線通信媒体、無線通信ネットワーク、セルラー通信ネットワーク、G3通信ネットワーク、公衆交換電話網(PSTN)、パケットデータネットワーク(PDN)、インターネット、イントラネット及びこれらの組み合わせ等を含み得る。より具体的には、前記通信技術は、例えば無線周波数(RF)通信、赤外線(IR)通信、HTTP(ハイパーテキスト伝送プロトコル)、TCP/IP(伝送制御プロトコル/インターネットプロトコル)、LAN、WAN、WIFI、PPP(ポイント間)、SSL(セキュア・ソケット・レイヤー)、TLS(トランスポート層セキュリティ)、IrDa、USB、ファイアワイア(Firewire、商標)、ブルートゥース(Bluetooth、商標)プロトコル、GSM(移動体通信用全世界システム)、GPRS(汎用パケット無線(general packet radio、商標)システム)及びUMTS(ユニバーサル移動電話システム)等を含み得る。結果として、本発明は開示の目的のために選択されたインターネット110に限られない。むしろ、本発明は前記のネットワーク接続形態、システム又は方法のいずれかと共に、任意の他の適切な既知又は未発明若しくは未設計のネットワークシステムを含む。
加えて、本発明により使用されるクライアント装置108は、本発明が任意の適切な伝送媒体を通じて使用されているネットワーク(例えばインターネット110)にアクセスし得る。前記伝送媒体は、例えば同軸ケーブル、ツイストペア、銅線及び光ファイバー等を含む。伝送媒体もまた、無線周波数(RF)通信及び赤外線(IR)データ通信等の間に生成されるもののように、音響、光及び電磁気波等の形態を採り得る。
サーバ112は当業者に知られており、本明細書において以下に述べられる数個の詳細を除き、本明細書においてはさらに説明されない。サーバ112は、同様に当業者に知られたウェブサーバ層を含む。当該アプリケーションに適切であると発見された一つのウェブサーバ層は、米国メリーランド州フォレスト・ヒルズ(Forrest Hills)のアパッチ・ソフトウェア・ファウンデーション(Apache Software Foundation)からのアパッチ(Apache)ウェブサーバである。他の類似の製品が、これに代用され得ることが認識されるであろう。
サーバ112には、共通ゲートウェイインターフェース(CGI)122を実施するために適切なソフトウェアが備えられる。CGI122の実施もまた良く知られており、そのため本明細書においてはより詳細に述べられない。オープン・マーケット(Open Market)からのCGIに対する拡張である、持続的な接続を維持することにより性能を改善するファストCGIは、インテロス100を実施するために好適であることが発見された。
インテロスシステム100の核心は、アプリケーションソフトウェアを実行可能コードとしてサーバ上に格納し、ネットワーク接続、例えばインターネット110を介して、そのような実行可能コードを効率的かつ安全にサーバ112からクライアント装置108に選択的にダウンロードする能力である。
本発明のインテロスシステムは、媒体コンテンツ記憶及び/又は配信と共に全ての計算の必要物を提供するあらゆるものを含むウェブベースのサービスとして基礎から設計された。その設計の目標は、高品質のサービス、優れたシステムの安定性、安全性、速度、使用の容易さ、並びに現在の計算環境において流行しているウイルス、スパイウェア及び他の危険かつ/又は迷惑な問題への抵抗性を含む。インテロスは、容易に理解されるように論理的な組織的階層を有し、そのカラーコード化(color-coding)はインテロスを幼児が使用するのに十分に容易なものにする。インテロスは、単純かつ高速なファイル供給を提供するが、コンテンツは商業的媒体及びソフトウェア配信のために管理され得る。インテロスは、ユーザによる無料又は低コストのアクセスのために設計されたバージョンによる宣伝を支援する。
ユーザがそこから容易にアプリケーションを見付けて選択することができる無料ソフトウェアの安定した基礎が提供される。「開かれた」方針が維持されるため、ソフトウェアの基礎は容易に追加され得る。ソフトウェアは、クライアントマシン上のブラウザを介して既存のランタイム環境により実行可能である言語(例えばジャバ)により書かれていることのみを必要とする。インテロスシステムは、ソフトウェアアプリケーションへのアクセスを、選択して使用することに単純化する。この設計アプローチは、ソフトウェアパッケージをダウンロードしてインストールする必要を消去する。バージョンのアップグレードがインテロス中央レポジトリ内のソフトウェアに対してなされ、そのためユーザは常にアプリケーションの最新バージョンへのアクセスを有する。
インテロスの使用の容易さの多くは、固有のインテロスGUIの結果である。さて図2を参照すると、本発明のインテロスシステムのユーザに最初に提示されるログイン画面200の画面写真が示されている。モジラ・ファイアフォックスブラウザが、例示的実施形態のために選択された。本明細書において上述したように、本発明のインテロスシステムと相互作用するために他の適切なブラウザが使用され得る。ブラウザ画面領域又は作業空間202は、図示されないコンピュータモニタ上に典型的に表示されるように、実質的に長方形である。インテロスGUIにより提供されるログイン200は、任意の特定のクライアントマシン108(図1)上に適切に表示されることが認識されるであろう。
作業空間202の中心には、線206,208を伴うログイン領域204が現れ、ここで既知又は登録済のユーザはログイン名及びパスワードをそれぞれ入力する。ボックス204の下には領域218が現れ、ここでは新規な(すなわち未知又は未登録の)潜在的ユーザが、図示されない登録ページに向けられるように「クリック」し得る。本明細書において使用されるように、クリックの語は、一般に図示されないポインティングデバイスにより、又は例えば図示されない典型的なPDA上において提供されるような接触感知画面により実行される、GUIを介して通信するためのユーザによる任意の動作を指す。
四つのアクション「ボタン」210,212,214及び216は、作業空間202の四つの角に配置される。本明細書において使用されるように、ボタンの語は、ユーザがクリックすることによりアクションを起動し又はオプションを選択し得る任意の領域又は特徴を指すために使用される。四つのボタン210,212,214及び216は、それぞれ「新規」、「開く」、「次」及び「設定」である。ボタン210,212,214及び216のそれぞれによって実行される動作は、本明細書の以下に詳細に説明される。ボタン210,212,214及び216は、固有の自然な動作の配列を示すために選択的にカラーコード化され得る。例えば、新規ボタン212は緑色であり、開くボタン210は黄色であり得る等である。
インテロスシステムは、直感的に理解できかつ使用が容易であるGUIを実施するために、覚えやすいように暗示的であるカラーコード化されたアイコンを使用し得ることに留意されるべきである。画面200のGUIは、典型的には標準であって、インテロスシステムによって制御される。本明細書の以下に述べられるように、インテロスサーバによって格納されるユーザの嗜好は、インテロスシステムにおける後続の画面の外観を決定する。
さて図3を参照すると、「新規」ボタン212のインテロスにより生成された説明を有する画面写真220が示される。インテロスは、ポインティングデバイスがカーソルをボタンの一つ、例えばボタン210,212,214及び216に近接して位置付けたときに、マウスオーバーヘルプシステムを実施する。領域222に示される情報は、図示されないポインティングデバイスがボタン212に近接して位置付けられたときに取得される。このインテロスの特徴は、状況感知ヘルプの取得を容易にする。
さらに図3と今度は図4をも参照すると、新規ボタン212を押すことにより新規メニュー228が表示される。新規メニュー228から任意のアイテムを選択することにより、ユーザは新規なウェブ検索を実行し、新規なブックマークを作成し、新規な電子メールを送信し、新規な文書を作成し、新規な共有を確立し、新規な媒体を取得し、動作させるべき新規なアプリケーション及びゲームを選択することが可能になる。もちろん、新規メニュー228における任意のカテゴリー内の複数の選択肢の間において選択するために、サブメニューが使用され得る。本発明のシステムの特定の実施形態について必要とされるように、新規メニュー228にメニューエントリが追加され、又は新規メニュー228から既存のエントリが削除され得ることもまた認識されるであろう。メニューは、作業空間202の上方右の角にある「X」226をクリックすることにより閉じられる。
さらに図3と今度は図5をも参照すると、開くボタン210をクリックすることにより開くメニュー224が表示される。開示の目的のために選択されたインテロスシステムにおいては、電子メール、ウェブページブックマーク、ワードプロセッシング文書、音楽、映像、画像、アラーム、着信(incoming)及び共有の九つのメニュー選択が提示される。もちろん、特定の動作状況又は環境に適合するために、多数の他の可能性が追加又は代用され得ることが認識されるであろう。開くメニュー224内の任意の選択をクリックすることにより、開くために以前に保存された何かが選択される。メニュー224は、作業空間202の上方右の角にある「X」226をクリックすることによっても終了され得る。開くメニュー224からの任意のアイテムの選択は、典型的にはサーバ112(図1)上に格納されたデータを適切なプログラム116(図1)と共に利用可能にさせる。それにより、サーバ112とプログラム116の両者は使用のためにユーザにダウンロードされる。典型的には、図示されない一以上のサブメニューは、メニュー224中に表示された保存済アイテムの特定の区分内の潜在的に多数のデータアイテムの間から選択するために利用される。サブメニュー等を使用して特定のデータアイテムまで掘り下げることは良く知られていると考えられ、本明細書においてはさらに述べられない。
再び図3と今後は図6をも参照すると、次ボタン214を押すことにより次メニュー230が表示される。次メニュー214から、ユーザは、保存、別の実行中タスクへの切り換え、「別の名前で保存」の実行、又は、保存せずに終了、を典型的には含む可能な「次」オプションのリストを提供される。保存が選択された場合、作業中のファイル又はデータが既に存在すれば当該ファイル又はデータは更新される。そうでない場合、新規なファイルが作成され、ユーザにはファイルネームとファイルのための場所を要求するダイアログが提示される。典型的には、論理的なデフォルトファイル位置が提供される。
別のタスクへの切り換えが選択された場合、ユーザにより実行されている現在のタスクは開いたままになるが、バックグラウンドに格下げされる。次の論理的作業空間は、実行中のタスクのリストから選択されたものである。
保存せずに終了オプションが選択された場合、変化は保存されず、現在のタスクは閉じられて実行中のタスクのリストから除去される。
このメニューは、メニュー作業空間202の上方右の角にある「X」226をクリックすることによっても終了され得る。
再度図3と今度は図7をも参照すると、設定ボタン216をクリックすることにより設定メニュー232が表示される。設定メニュー232から、ユーザは設定を見て調整し得る。設定は、カレンダー及び時計、外観の好みと共に、他のデフォルトを含む。設定メニュー232は、作業空間202の上方右の角にある「X」226をクリックすることによって終了され得る。
インテロス・ドット・コムは、適切に設定されて保護されたフリーBSDサーバ又はクラスタ上において動作させられ、将来の安全性の必要を満たすようにオープンBSD上において動作するように移植され得る。インテロス・ドット・コムは、リナックス又は任意の他の適切なプラットフォーム上において動作するように移植され得る。BSDはその堅牢性及び柔軟性のため、例示的な実施形態のために選択された。BSDは負荷バランシング、データ冗長性、拡張性、基準遵守、安定性、動作可能時間、安全性及び全体のサービスの品質の領域において良好に機能する。BSDは、注目すべき使用許諾の利点をも有する。インテロスはmod_sslを有するアパッチウェブサーバを使用し、XHTML、ジャバスクリプト、カスケーディング・スタイル・シート及び動的XHTMLを生成するC言語により書かれたFastCGIからのhttpsを提供する。インテロスは、ユーザの文書のレポジトリとジャバにより実施されたプログラムへの安全なアクセスを提供する。mod_sslの下においては、TLSは第三者による傍受を防ぐために使用される。高度のRSA暗号化により、クラッキングの試みには極めて法外な費用が掛かることになる。インテロス・ドット・コムは任意の数の他の技術により実施され得るが、安定性、速度、安全性及び拡張性を最適化するために、現在受け入れられている、実績のあるインターネット技術が選択された。
インテロスは、基本的には標準汎用ウェブインターフェースを動的に生成するためのサーバ側ソフトウェアを実行する保護されたウェブサーバ又はクラスタにより構成される。前記ウェブインターフェースは、以前に保存された環境の好みの変数を使用する各ユーザのためにカスタマイズされている。前記好みは、ユーザ、又は特定の状況下におけるソフトウェアアプリケーションのいずれかによって変更され得る。
ユーザのアカウント情報は、プログラム及び媒体ファイルを最適に実行することが可能なウェブブラウザを介してアクセス可能である。前記アカウント情報は、暗号化及びログインコードにより保護されている。
インテロス・ドット・コムは、並列マルチプロセッサコンピュータ又は他の計算装置から提供され、負荷バランシングルータを通じて互いとインターネットにネットワーク化され得る。マルチプロセッサノードは、その固有の性能利益のために使用され得る。そのようなサーバ配置は当業者にとって既知であり、他の多くの選択的配置が可能であることが認識されるであろう。
記憶装置は、ネットワークファイルシステム(NFS)によって提供され得て、典型的には速度及び冗長性の両方を提供するRAIDハードディスクアレイにより構成される。RAIDレベル5は、高データ転送率及び冗長バックアップのバランスを提供するため、多用途性及び効率性のために選択された。しかしながら、他のRAIDレベル及び/又は他のディスク記憶装置接続形態もまた使用され得ることが認識されるであろう。
サーバクラスタは、最適化された速度、動作可能時間及びオンデマンドアクセス可能性により特徴付けられる高品質サービスを維持するためにホット拡張可能であるように設計されることが望ましい。
フリーBSDは、クラスタ及びサブシステムの最適なソフトウェア管理を促進する。
本発明の概念のインターネットを基礎とする実施形態が非常に望ましいが、前記概念は企業ネットワーク環境においても実施され得ることが認識されるであろう。事業又は他の組織又は機関は、インテロス企業版の実施形態を内部ネットワーク上に配置することによって、インターネットのインテロス・ドット・コムユーザが経験する、同一の統一された使用の容易さと、全世界的アクセス可能性から利益を受けることができる。インテロス・ドット・コムは良く保護されているが、インテロス企業版は、現在私的な制御されたネットワーク内において可能である追加の安全性のレベルから利益を得ることができる。本明細書において上述された本発明の概念は、データベース並びに他の内部情報、文書及びソフトウェアへの高速かつ安全なアクセスを可能にし、高速かつ単純な強力及びファイル共有を可能にし、安全なグループレベルアクセス制御を提供する。インテロス企業版は、開発し易い環境を提供する。すなわち、標準ジャバアプリケーションがインテロス環境内において動作させられるため、ネットワークユーザに提供される利用可能なソフトウェアアプリケーションのリストに新規なアプリケーションが容易に追加され得る。
インテロスは、複合オンラインコンテンツ提供システム及び動作環境を提供する。コンテンツに関しては、本発明は媒体及びソフトウェア配信システムとして動作し、ユーザのファイル及びソフトウェアのためのオンラインレポジトリとして働く。本発明の概念は、ネットワーク化されたマイクロプロセッサ及び画面と共にウェブブラウザ(ジャバ等のような適切なランタイム環境を含む)を動作させる能力を有する任意のクライアント装置上において動作するオペレーティングシステムを提供することにより、現在の計算モデルの多数の問題を克服する。ジャバ、フラッシュ、ショックウェーブ(Shockwave)及び他のプラグイン及びブラウザ媒体がサポートされる。インテロス技術は、インターネットから事業の私的イントラネットまでの任意のネットワークを横断して拡張可能である。
インテロシタ(interositor)は、インテロス・ドット・コム又はインテロス企業版を実行させる携帯電子装置である。技術的には、適切なウェブブラウザとランタイム環境(例えばジャバ)を有する任意のクライアント装置であって、インテロス・ドット・コム又はインテロス企業版に接続されるものがインテロシタである。ハードウェアの最小構成が、本発明のインテロスシステムを利用することにより、ソフトウェアアプリケーション、媒体、個人的記憶装置及び通信/データ交換を含むユーザ計算環境を提供するための全てのコンピュータの機能が可能な、強力であるが高価でない携帯装置を生み出す。インテロス技術は現在の世代のコンピュータ及び携帯装置と良好に相互作用するが、理想的には、インテロシタは携帯デジタル装置の費用/性能における前進を提供する。インテロシタは、理想的には約16:9のアスペクト比を有する携帯タッチスクリーンから構成される。全ての仮想ボタン機能がインテロス・ドット・コム又はインテロス企業版により提供されるため、前記タッチスクリーンは最も便利なボタンの必要性を消去する。機能の全範囲についての追加のハードウェアは、タッチスクリーンの後方に組み込まれ得る。
最小の組み込み済オペレーティングシステムは、ドライバをハードウェアに結合し、組み込み済ウェブブラウザと組み込み済ランタイム環境のためのプラットフォームを提供する。組み込み済オペレーティングシステムのための多数の無料又はオープンのソースソリューション、モジラ・ゲッコーベースのウェブブラウザ並びにランタイム環境及び/又は仮想マシン(ジャバを含む)が既に存在し、多数の組み合わせにより配置され得る。インテロス・ドット・コム又はインテロス企業版サーバへの接続のために、無線/セルラー技術が使用される。典型的にはスピーカ/マイクロホンの組み合わせである音声変換機が、音声呼び出し及びA/V(音声/映像)再生のために提供され得る。音声呼び出しは、標準セルラー技術を介して、又はジャバボイス・オーバー・インターネット・プロトコル(VOIP)アプリケーションにより達成され得る。追加の特徴は、三次元画面、UHF及び/又は赤外線通信能力、USB及びファイアワイアを含む有線入力のポート複製を含み得る。インテロシタは、折り畳み筐体を含む種々の方法によりパッケージ化され得る。
本明細書において上述したインテロスシステムは、クライアントマシンにおける単独モードによる使用のためのアプリケーションコードのダウンロードを可能にするダウンロードの特徴を含むように拡張され得る。そのようなダウンロードされたソフトウェアは、その後、例えばネットワーク接続が利用可能でないときに、サーバ上に格納されたデータよりむしろ、局所的に格納されたデータ上において実行され得る。典型的にはアプリケーションコードはジャバにより書かれているため、そのようなオフライン動作はジャバ仮想マシンがクライアント上において利用可能である限り可能である。この強化は、インテロスシステムに追加された柔軟性をもたらす。
また、サーバ上のアプリケーションコードはオープンソースコードであり得て、それにより最終ユーザに対して変更の目的のための自由なアクセスを可能にする。資格のあるソフトウェア開発者に新規なアプリケーションをインテロスサーバに加える方法を与えることにより、開発者は新規なアプリケーションを提供し、又は既存のアプリケーションを強化することを奨励される。その結果、インテロスは単一の機関により排他的に作成され、所有され、管理されたいかなるシステムより遥かに動的になる。
特定の動作要求及び環境に適合するために変化させられる他の変形及び変更は当業者には明白であるため、本発明は開示の目的のために選択された実施例に限定されて考えられず、本発明の真の精神及び範囲からの逸脱を構成しない全ての変更及び変形に及ぶ。
このように本発明を説明したが、特許証による保護が所望されることは、添付の特許請求の範囲に提示される。
Claims (10)
- a)実行可能コードを含む少なくとも一つのアプリケーションプログラムと、ユーザに関連付けられた少なくとも一つのデータファイルと、ユーザに関連付けられた嗜好情報を含むサーバと、
b)ウェブブラウザを実行するように適応されたクライアント装置であって、前記ブラウザがマークアップ言語のストリームを分析するための手段、前記マークアップ言語のストリームによりリンクされたコードを実行するための手段、及びユーザインターフェースを備えており、前記サーバに通信可能に接続されているクライアント装置と、
c)前記クライアント装置のユーザによって生成されたコマンドにより、前記マークアップ言語のストリーム中に前記実行可能コードへのリンクを埋め込むための前記サーバに配置された手段
を備えたインターネットオペレーティングシステムであって、
前記少なくとも一つのアプリケーションプログラムの前記実行可能コードが前記クライアント装置の前記ブラウザ内において実行され、前記アプリケーションプログラムとユーザの相互作用が前記ユーザインターフェースを介している、インターネットオペレーティングシステム。 - 前記サーバが、
d)ウェブサーバ層
をさらに備えている、請求項1に記載のインターネットオペレーティングシステム。 - 前記ウェブサーバ層がアパッチ(Apache)ウェブサーバソフトウェアを備えている、請求項2に記載のインターネットオペレーティングシステム。
- 前記サーバが、CGIとFastCGIのうちの少なくとも一つを実施するための手段をさらに備えている、請求項1に記載のインターネットオペレーティングシステム。
- 前記ユーザ嗜好情報がユーザセキュリティ情報を備えており、
d)前記ユーザセキュリティ情報に基づいて前記少なくとも一つのデータファイルと前記少なくとも一つのアプリケーションプログラムへのアクセスを制御するための前記サーバに配置された手段
をさらに備えた、請求項1に記載のインターネットオペレーティングシステム。 - d)少なくとも一部について前記ユーザ嗜好情報により決定された外観を有するインテロス(Interos)グラフィカルユーザインターフェース(GUI)を提供するための前記サーバに配置された手段
をさらに備えた、請求項1に記載のインターネットオペレーティングシステム。 - 前記GUIが、ユーザが何らかの新しいことを行うこと、何らかの保存されたものを開くこと、システムにユーザが準備されたことを示すこと、及び設定を変更することをそれぞれ可能にする「新規」、「開く」、「次」及び「設定」を含む四つのそれぞれの処理のうちの一つを起動するために適応された、前記GUI上に配置された四つの動作起動領域を備えている、請求項6に記載のインターネットオペレーティングシステム。
- 前記マークアップ言語のストリームが、HTML、XML及びXHTMLのうちの少なくとも一つを含む、請求項1に記載のインターネットオペレーティングシステム。
- 前記少なくとも一つのアプリケーションプログラムが、職場/生産性、データベース、通信、マルチメディア、画像処理及びゲームのグループから選択されるアプリケーションを含む、請求項1に記載のインターネットオペレーティングシステム。
- 前記少なくとも一つのアプリケーションプログラムがオープンソースコードを含む、請求項1に記載のインターネットオペレーティングシステム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US67922405P | 2005-05-10 | 2005-05-10 | |
PCT/US2006/018201 WO2006122228A2 (en) | 2005-05-10 | 2006-05-10 | Internet operating system |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2008545181A true JP2008545181A (ja) | 2008-12-11 |
Family
ID=37397296
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008511348A Pending JP2008545181A (ja) | 2005-05-10 | 2006-05-10 | インターネットオペレーティングシステム |
Country Status (6)
Country | Link |
---|---|
US (1) | US7890574B2 (ja) |
EP (1) | EP1880307A4 (ja) |
JP (1) | JP2008545181A (ja) |
AU (1) | AU2006243965A1 (ja) |
CA (1) | CA2608269A1 (ja) |
WO (1) | WO2006122228A2 (ja) |
Families Citing this family (51)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8352400B2 (en) | 1991-12-23 | 2013-01-08 | Hoffberg Steven M | Adaptive pattern recognition based controller apparatus and method and human-factored interface therefore |
US7966078B2 (en) | 1999-02-01 | 2011-06-21 | Steven Hoffberg | Network media appliance system and method |
WO2005093607A1 (en) * | 2004-02-27 | 2005-10-06 | Ebay Inc. | Method and system to monitor a diverse heterogeneous application environment |
US8983966B2 (en) | 2004-02-27 | 2015-03-17 | Ebay Inc. | Method and system to monitor a diverse heterogeneous application environment |
US7685230B2 (en) * | 2004-04-01 | 2010-03-23 | Vaakya Technologies Private Limited | System and method for program execution |
US7698321B2 (en) * | 2005-09-30 | 2010-04-13 | At&T Intellectual Property I, L.P. | Methods, systems, and products for updating web content |
US7845005B2 (en) * | 2006-02-07 | 2010-11-30 | International Business Machines Corporation | Method for preventing malicious software installation on an internet-connected computer |
US8930812B2 (en) | 2006-02-17 | 2015-01-06 | Vmware, Inc. | System and method for embedding, editing, saving, and restoring objects within a browser window |
US8695030B2 (en) * | 2006-12-14 | 2014-04-08 | Verizon Patent And Licensing Inc. | Instant messaging with a media device |
US8254568B2 (en) * | 2007-01-07 | 2012-08-28 | Apple Inc. | Secure booting a computing device |
US8291480B2 (en) * | 2007-01-07 | 2012-10-16 | Apple Inc. | Trusting an unverified code image in a computing device |
US8239688B2 (en) | 2007-01-07 | 2012-08-07 | Apple Inc. | Securely recovering a computing device |
US8572716B2 (en) | 2007-04-23 | 2013-10-29 | Microsoft Corporation | Integrating operating systems with content offered by web based entities |
BRPI0818194A2 (pt) * | 2007-09-28 | 2018-07-24 | Xcerion Ab | meio legível por computador |
US9122650B1 (en) | 2007-11-14 | 2015-09-01 | Appcelerator, Inc. | Web server based on the same paradigms as web clients |
US8914774B1 (en) | 2007-11-15 | 2014-12-16 | Appcelerator, Inc. | System and method for tagging code to determine where the code runs |
US8954989B1 (en) | 2007-11-19 | 2015-02-10 | Appcelerator, Inc. | Flexible, event-driven JavaScript server architecture |
US8260845B1 (en) | 2007-11-21 | 2012-09-04 | Appcelerator, Inc. | System and method for auto-generating JavaScript proxies and meta-proxies |
US8566807B1 (en) | 2007-11-23 | 2013-10-22 | Appcelerator, Inc. | System and method for accessibility of document object model and JavaScript by other platforms |
US8719451B1 (en) * | 2007-11-23 | 2014-05-06 | Appcelerator, Inc. | System and method for on-the-fly, post-processing document object model manipulation |
US8756579B1 (en) | 2007-12-03 | 2014-06-17 | Appcelerator, Inc. | Client-side and server-side unified validation |
US8806431B1 (en) | 2007-12-03 | 2014-08-12 | Appecelerator, Inc. | Aspect oriented programming |
US8819539B1 (en) | 2007-12-03 | 2014-08-26 | Appcelerator, Inc. | On-the-fly rewriting of uniform resource locators in a web-page |
US8938491B1 (en) | 2007-12-04 | 2015-01-20 | Appcelerator, Inc. | System and method for secure binding of client calls and server functions |
US8527860B1 (en) | 2007-12-04 | 2013-09-03 | Appcelerator, Inc. | System and method for exposing the dynamic web server-side |
US8285813B1 (en) | 2007-12-05 | 2012-10-09 | Appcelerator, Inc. | System and method for emulating different user agents on a server |
US8639743B1 (en) | 2007-12-05 | 2014-01-28 | Appcelerator, Inc. | System and method for on-the-fly rewriting of JavaScript |
US8335982B1 (en) | 2007-12-05 | 2012-12-18 | Appcelerator, Inc. | System and method for binding a document object model through JavaScript callbacks |
US8473836B2 (en) | 2007-12-21 | 2013-06-25 | The Invention Science Fund I, Llc | Look ahead of links/alter links |
US8489981B2 (en) | 2007-12-21 | 2013-07-16 | The Invention Science Fund I, Llc | Look ahead of links/alter links |
US8468440B2 (en) | 2007-12-21 | 2013-06-18 | The Invention Science Fund I, Llc | Look ahead of links/alter links |
US8949977B2 (en) * | 2007-12-21 | 2015-02-03 | The Invention Science Fund I, Llc | Look ahead of links/alter links |
US8793616B2 (en) | 2007-12-21 | 2014-07-29 | The Invention Science Fund I, Llc | Look ahead of links/alter links |
US8495486B2 (en) | 2007-12-21 | 2013-07-23 | The Invention Science Fund I, Llc | Look ahead of links/alter links |
US20090288080A1 (en) * | 2008-05-13 | 2009-11-19 | Partridge Lucas W | Method of Delivering Software Over a Network |
US9405555B2 (en) * | 2008-05-23 | 2016-08-02 | Microsoft Technology Licensing, Llc | Automated code splitting and pre-fetching for improving responsiveness of browser-based applications |
US8291079B1 (en) | 2008-06-04 | 2012-10-16 | Appcelerator, Inc. | System and method for developing, deploying, managing and monitoring a web application in a single environment |
US8880678B1 (en) | 2008-06-05 | 2014-11-04 | Appcelerator, Inc. | System and method for managing and monitoring a web application using multiple cloud providers |
US20110106913A1 (en) * | 2008-07-07 | 2011-05-05 | Yaniv Cohen | Dynamically monitoring and customizing devices in a communication network |
US20100043011A1 (en) * | 2008-08-18 | 2010-02-18 | International Business Machines Corporation | Method for tracking local storage of web pages |
US7596620B1 (en) | 2008-11-04 | 2009-09-29 | Aptana, Inc. | System and method for developing, deploying, managing and monitoring a web application in a single environment |
US9082409B2 (en) * | 2008-08-28 | 2015-07-14 | Avaya Inc. | Binary-caching for XML documents with embedded executable code |
GB2501206B (en) | 2011-01-27 | 2019-12-04 | Hewlett Packard Development Co | A computing device to connect to a portable device |
US8930940B2 (en) * | 2011-08-19 | 2015-01-06 | Yongyong Xu | Online software execution platform |
GB2506336B (en) * | 2012-07-25 | 2015-11-18 | Andrew Nairn Baillie | Methods and systems for protecting and securing a server client and a device client communication |
US11907496B2 (en) | 2013-02-08 | 2024-02-20 | cloudRIA, Inc. | Browser-based application management |
CN103823702B (zh) * | 2014-03-10 | 2018-04-27 | 联想(北京)有限公司 | 一种应用安装方法及电子设备 |
US10756985B2 (en) | 2015-01-27 | 2020-08-25 | Nutanix, Inc. | Architecture for implementing user interfaces for centralized management of a computing environment |
US20160371241A1 (en) * | 2015-06-19 | 2016-12-22 | Microsoft Technology Licensing, Llc | Autocreate files using customizable list of storage locations |
US10599459B2 (en) | 2016-02-12 | 2020-03-24 | Nutanix, Inc. | Entity database distributed replication |
US10700991B2 (en) | 2017-11-27 | 2020-06-30 | Nutanix, Inc. | Multi-cluster resource management |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10260821A (ja) * | 1997-03-17 | 1998-09-29 | Rikuruuto:Kk | Wwwブラウザ用スタートページの自動生成システム |
JPH11102289A (ja) * | 1997-09-26 | 1999-04-13 | Hitachi Software Eng Co Ltd | 業務処理用画面生成方法 |
JP2001222415A (ja) * | 2000-02-07 | 2001-08-17 | Matsushita Electric Ind Co Ltd | プログラム管理装置 |
JP2003108330A (ja) * | 2001-09-26 | 2003-04-11 | Kyocera Mita Corp | 画像形成装置のコンピュータ及び画像形成装置 |
JP2003223309A (ja) * | 2002-11-26 | 2003-08-08 | Seiko Epson Corp | ネットワーク管理システム及び方法 |
JP2004145713A (ja) * | 2002-10-25 | 2004-05-20 | Toukei Computer Co Ltd | ブラウザのみで動作する「表計算」「ワープロ」ソフトによるドキュメント作成・管理システム |
JP2005115774A (ja) * | 2003-10-09 | 2005-04-28 | Nec Corp | データシート編集システム、表計算シート編集システムおよびデータシート編集方法 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020059402A1 (en) * | 1996-11-15 | 2002-05-16 | Charles E. Belanger | Server-sided internet-based platform independent operating system and application suite |
US6199099B1 (en) * | 1999-03-05 | 2001-03-06 | Ac Properties B.V. | System, method and article of manufacture for a mobile communication network utilizing a distributed communication network |
EP1126681A2 (en) * | 2000-01-14 | 2001-08-22 | Sun Microsystems, Inc. | A network portal system and methods |
US6643683B1 (en) * | 2000-05-08 | 2003-11-04 | International Business Machines Corporation | Interactive client-server environment for performing collaborative timing analysis of circuit designs |
US7013312B2 (en) * | 2001-06-21 | 2006-03-14 | International Business Machines Corporation | Web-based strategic client planning system for end-user creation of queries, reports and database updates |
US7188318B2 (en) * | 2002-06-11 | 2007-03-06 | International Business Machines Corporation | Web accessibility assistant |
US7065704B1 (en) * | 2002-07-18 | 2006-06-20 | Embedded Internet Solutions, Inc. | Methods for fast HTML rendering |
US20040019508A1 (en) * | 2002-07-29 | 2004-01-29 | Howard Yaruss | System for providing information related to insurance on a loan for real property |
US20060150073A1 (en) * | 2004-12-30 | 2006-07-06 | Nokia Corporation | Method for inhibiting the execution of a navigating command |
-
2006
- 2006-05-10 JP JP2008511348A patent/JP2008545181A/ja active Pending
- 2006-05-10 WO PCT/US2006/018201 patent/WO2006122228A2/en active Application Filing
- 2006-05-10 EP EP06770210A patent/EP1880307A4/en not_active Withdrawn
- 2006-05-10 AU AU2006243965A patent/AU2006243965A1/en not_active Abandoned
- 2006-05-10 CA CA002608269A patent/CA2608269A1/en not_active Abandoned
- 2006-05-10 US US11/431,679 patent/US7890574B2/en not_active Expired - Fee Related
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10260821A (ja) * | 1997-03-17 | 1998-09-29 | Rikuruuto:Kk | Wwwブラウザ用スタートページの自動生成システム |
JPH11102289A (ja) * | 1997-09-26 | 1999-04-13 | Hitachi Software Eng Co Ltd | 業務処理用画面生成方法 |
JP2001222415A (ja) * | 2000-02-07 | 2001-08-17 | Matsushita Electric Ind Co Ltd | プログラム管理装置 |
JP2003108330A (ja) * | 2001-09-26 | 2003-04-11 | Kyocera Mita Corp | 画像形成装置のコンピュータ及び画像形成装置 |
JP2004145713A (ja) * | 2002-10-25 | 2004-05-20 | Toukei Computer Co Ltd | ブラウザのみで動作する「表計算」「ワープロ」ソフトによるドキュメント作成・管理システム |
JP2003223309A (ja) * | 2002-11-26 | 2003-08-08 | Seiko Epson Corp | ネットワーク管理システム及び方法 |
JP2005115774A (ja) * | 2003-10-09 | 2005-04-28 | Nec Corp | データシート編集システム、表計算シート編集システムおよびデータシート編集方法 |
Also Published As
Publication number | Publication date |
---|---|
US7890574B2 (en) | 2011-02-15 |
CA2608269A1 (en) | 2006-11-16 |
EP1880307A4 (en) | 2009-01-21 |
WO2006122228A2 (en) | 2006-11-16 |
WO2006122228A3 (en) | 2007-09-07 |
EP1880307A2 (en) | 2008-01-23 |
AU2006243965A1 (en) | 2006-11-16 |
US20060259592A1 (en) | 2006-11-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2008545181A (ja) | インターネットオペレーティングシステム | |
US11829186B2 (en) | System and methods for integration of an application runtime environment into a user computing environment | |
JP5389829B2 (ja) | リモートリソースのウェブアクセスのためのxmlベースのウェブフィード | |
US9332063B2 (en) | Versatile application configuration for deployable computing environments | |
JP3457605B2 (ja) | オフライン・クライアントの要求に対して応答を返す装置、方法および記憶媒体 | |
US9063814B2 (en) | Binding user data files | |
JP4849692B2 (ja) | ポータブル・ポートレットを選択および配信する方法ならびに装置 | |
US20080147671A1 (en) | System for Running Web Applications Offline and Providing Access to Native Services | |
TWI521357B (zh) | 經由網頁瀏覽器輸入內容至應用程式 | |
Rellermeyer et al. | AlfredO: an architecture for flexible interaction with electronic devices | |
EP2174211A1 (en) | Application management framework for web applications | |
JP7148715B2 (ja) | 動的領域ベースのアプリケーション操作 | |
JPWO2007004371A1 (ja) | 次世代テレビジョン受像機 | |
JP2015529923A (ja) | モバイルブラウザ用のブックマークを移動させる方法及びシステム | |
AF et al. | RSC-Remote System Controller | |
WO2009036301A1 (en) | System and method for mobilizing web content | |
Cazzulino et al. | Beginning visual web programming in c#: From novice to professional | |
Cazzulino et al. | Environment and Architecture | |
JP2002116919A (ja) | ネットワークベースのアプリケーション、それを処理するためのアーキテクチャ及びシステム、ならびにそれを実行するための方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20090508 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20111214 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20111222 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20120521 |