[go: up one dir, main page]

JP2011118837A - 情報処理装置、情報処理方法およびプログラム - Google Patents

情報処理装置、情報処理方法およびプログラム Download PDF

Info

Publication number
JP2011118837A
JP2011118837A JP2009277924A JP2009277924A JP2011118837A JP 2011118837 A JP2011118837 A JP 2011118837A JP 2009277924 A JP2009277924 A JP 2009277924A JP 2009277924 A JP2009277924 A JP 2009277924A JP 2011118837 A JP2011118837 A JP 2011118837A
Authority
JP
Japan
Prior art keywords
unit
application
instruction
information processing
information
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
Application number
JP2009277924A
Other languages
English (en)
Inventor
Yasuo Takeuchi
康雄 竹内
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Priority to JP2009277924A priority Critical patent/JP2011118837A/ja
Priority to EP10192517.0A priority patent/EP2339551A3/en
Priority to US12/927,889 priority patent/US9208633B2/en
Priority to CN201010567122.0A priority patent/CN102087715B/zh
Publication of JP2011118837A publication Critical patent/JP2011118837A/ja
Priority to US14/937,103 priority patent/US10268494B2/en
Priority to US16/281,744 priority patent/US10990422B2/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F7/00Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
    • G07F7/08Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
    • G07F7/10Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means together with a coded signal, e.g. in the form of personal identification information, like personal identification number [PIN] or biometric data
    • G07F7/1008Active credit-cards provided with means to personalise their use, e.g. with PIN-introduction/comparison system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45537Provision of facilities of other operating environments, e.g. WINE
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Stored Programmes (AREA)
  • Computer And Data Communications (AREA)
  • Input From Keyboards Or The Like (AREA)

Abstract

【課題】外部装置からの命令の仕様を変更することなく、通常とは異なる実行環境上で動作するOSを模倣したアプリケーションに対して、外部装置からの命令を実行させることが可能な情報処理装置、情報処理方法およびプログラムを提供する。
【解決手段】第1のOSに入力される命令、および第1のOSとは異なる第2のOSに入力される命令を受信する受信部と、受信部が受信した所定の命令に含まれる所定の情報と、アプリケーションを識別するための情報とが関連付けされたテーブルを記憶する記憶部と、受信部が受信した所定の命令と、記憶部に記憶されたテーブルとに基づいて、アプリケーションを選択的に実行するためのアプリケーション選択命令を生成する生成部と、生成部が生成したアプリケーション選択命令を実行して、アプリケーションを選択的に実行する実行部とを備える情報処理装置が提供される。
【選択図】図1

Description

本発明は、情報処理装置、情報処理方法およびプログラムに関する。
従来、情報の記録や演算を行うことのできる集積回路を組み込んだIC(Integrated Circuit)カードが実用化されている。中でも、集積回路内にプロセッサを備え、高度な情報処理を実現するスマートカードとも呼ばれるICカードは、日常生活における決済手段や個人識別手段として近年様々な用途に広く用いられている。
ICカード上での情報処理は通常、ICカードとの間で通信可能な外部装置から与えられる命令を受けて行われる。ICカードに与えられる命令には、情報の入出力や演算、又はセキュリティ処理などをICカードに実行させる様々なものが存在する。そこで、近年開発された多くのICカードは、そうした命令群を実行する基盤となるオペレーティングシステム(以下、OS(Operating System)という。)を回路内に搭載している。そして、異なる規格に従った複数の外部装置との間でICカードを連携可能にしてICカードの汎用性を高めるために、ICカードに複数の種類のOSが搭載される場合もある。
複数のOSを搭載したICカードに関連する技術としては、例えば、下記特許文献1に記載の技術が公知である。例えば、下記特許文献1では、外部装置と接触式で通信を行う場合と非接触式で通信を行う場合とで受け渡しされるメッセージの構造が異なっていても、各々のメッセージに対応した処理を行うことを可能とする技術が開示されている。
特開2005−242445号公報
ところで、複数のOSを搭載したICカードにおいて、あるOSを他のOSの実行環境上で動作させたい場合がある。例えば、Java(登録商標) CardOSやFeliCa(登録商標)OSなどの複数のOSを搭載したICカードにおいて、FeliCaOSを搭載する代わりに、Java CardOSにFeliCaOSを模倣したアプリケーションを組み込んで、FeliCaOSをJava CardOSの実行環境上で動作させたい場合がある。FeliCaOSを模倣したアプリケーションは、Java CardOSの実行環境上で実行されると、FeliCaOSが動作した際に生成される処理結果と等しくなる。なお、上述したFeliCaOSを模倣したアプリケーションとは、本来OSが管理しているハードウェア周りのアクセス制御やタスクスケジューリング機能、暗号機能、レジスタ設定などを除き、Java CardOSの実行環境を経由して制御するように変更を加えたものであり、ファイルシステム管理や、コマンド解釈機能、コマンド内容に沿った処理、レスポンス生成などの機能を実行可能な形態に変形したものである。VM Ware(登録商標)のような仮想マシンをカード上で構築することが可能であれば、現在のOSをそのままの形で搭載することも可能であり、その場合にFeliCaOSを模倣したアプリケーションが指す意味は、異なる実行環境上で動作可能なFeliCaOSと同義になる。
なお、OSにおけるすべての機能を完全な形で移植することに限らず、限定的な機能や一部の機能を抜粋した形で提供される場合も本アプリケーションが指し示す実現可能な形態の範疇である。この場合、Java CardOSは、後からアプリケーションとして機能を追加することができるため、必要に応じてFeliCaOSを後から追加することが可能である。部分的に模倣したアプリケーションは、1つのサービスの提供形態としてJava CardOSに後から追加したり、削除したりすることで、多様なサービスの入れ替えを実現することも可能である。
しかしながら、上述したようにJava CardOSの実行環境上でFeliCaOSを模倣したアプリケーションを実行する場合は、FeliCaOSが動作する実行環境が通常とは異なるため、Java CardOSのインタフェース上の制約により、通常のFeliCaOSで使用している伝送プロトコルやコマンドフォーマットが利用できないという問題がある。また、外部装置が送信するコマンドの仕様を変更するのは好ましくない。
そこで、本発明は、上記問題に鑑みてなされたものであり、本発明の目的とするところは、外部装置からの命令の仕様を変更することなく、通常とは異なる実行環境上で動作するOSに対して、外部装置からの命令を実行させることが可能な、新規かつ改良された情報処理装置、情報処理方法およびプログラムを提供することにある。
上記課題を解決するために、本発明のある観点によれば、第1のオペレーティングシステムに入力される命令、および前記第1のオペレーティングシステムとは異なる第2のオペレーティングシステムに入力される命令を受信する受信部と、前記受信部が受信した所定の命令に含まれる所定の情報と、アプリケーションを識別するための情報とが関連付けされたテーブルを記憶する記憶部と、前記受信部が受信した所定の命令と、前記記憶部に記憶されたテーブルとに基づいて、アプリケーションを選択的に実行するためのアプリケーション選択命令を生成する生成部と、前記生成部が生成したアプリケーション選択命令を実行して、アプリケーションを選択的に実行する実行部とを備える情報処理装置が提供される。
前記実行部は、前記第1のオペレーティングシステムの実行環境上で所定のアプリケーションを実行することにより、前記第2のオペーティングシステムが生成する処理結果と同様の処理結果を出力してもよい。
前記所定の命令は、第2のオペレーティングシステムの伝送プロトコル上で用いられる命令であり、カードを検知し、特定のカードから情報を取得する用途を持つ情報取得命令ある。その際に、所定のメモリ領域があるカードだけを選択して情報を取得するために、領域を指定するための領域情報が付加される場合がある。前記所定の情報は、前記情報取得命令に含まれる、前記カードが保有する所定のメモリ領域を識別するための領域情報であってもよい。第2のオペレーティングシステムは、その領域情報が付いた情報取得命令を受けると、指定された領域が選択された状態になる。
前記受信部が受信した命令の種類を判別する判別部をさらに備え、前記判別部は、前記命令の種類の判別において、前記命令が前記情報取得命令であるか否かの判別を行った後に、前記命令が前記アプリケーション選択命令であるか否かの判別を行ってもよい。
前記受信部が受信した命令のフォーマットのチェックを行うフォーマットチェック部を備え、前記フォーマットチェック部は、前記実行部によって所定のアプリケーションが実行されている場合は、前記命令のフォーマットのチェックを停止してもよい。または、所定の通信経路から命令を受け取った場合、前記命令のフォーマットのチェックを停止してもよい。
前記受信部が命令を受信した場合、前記記憶部に記憶されたテーブルに付加された応答可否フラグの状態によって、受信した命令に対応する応答判断を行ってもよい。
また、上記課題を解決するために、本発明の別の観点によれば、第1のオペレーティングシステムに入力される命令、および前記第1のオペレーティングシステムとは異なる第2のオペレーティングシステムに入力される命令を受信する受信ステップと、前記受信ステップで受信した所定の命令と、前記受信ステップで受信した所定の命令に含まれる所定の情報とアプリケーションを識別するための情報とが関連付けされたテーブルとに基づいて、アプリケーションを選択的に実行するためのアプリケーション選択命令を生成する生成ステップと、前記生成ステップで生成したアプリケーション選択命令を実行して、アプリケーションを選択的に実行する実行ステップとを有する情報処理方法が提供される。
また、上記課題を解決するために、本発明の別の観点によれば、コンピュータを、第1のオペレーティングシステムに入力される命令、および前記第1のオペレーティングシステムとは異なる第2のオペレーティングシステムに入力される命令を受信する受信部と、前記受信部が受信した所定の命令に含まれる所定の情報と、アプリケーションを識別するための情報とが関連付けされたテーブルを記憶する記憶部と、前記受信部が受信した所定の命令と、前記記憶部に記憶されたテーブルとに基づいて、アプリケーションを選択的に実行するためのアプリケーション選択命令を生成する生成部と、前記生成部が生成したアプリケーション選択命令を実行して、アプリケーションを選択的に実行する実行部として機能させるためのプログラムが提供される。
また、上記課題を解決するために、本発明の別の観点によれば、第1のオペレーティングシステムに入力される命令、および前記第1のオペレーティングシステムとは異なる第2のオペレーティングシステムに入力される命令を受信する受信部と、前記受信部が受信した所定の命令に含まれる所定の情報と、アプリケーションの情報とが関連付けされたテーブルを記憶する記憶部と、前記受信部が受信した所定の命令と、前記記憶部に記憶されたテーブルとに基づいて、アプリケーションを選択的に実行する実行部とを備える情報処理装置が提供される。
以上説明したように本発明によれば、外部装置からの命令の仕様を変更することなく、通常とは異なる実行環境上で動作するOSを模倣したアプリケーションに対して、外部装置からの命令を実行させることができる。
本発明の第1の実施の形態に係る情報処理装置の概略構成を主に示すブロック図である。 図1における情報処理装置が受信する情報取得命令のフォーマットの一例を示す説明図である。 図1における情報処理装置の命令処理部に入力されるアプリケーション選択命令のフォーマットの一例を示す説明図である。 図1における情報処理装置の記憶部に記憶されているテーブルTBL1Aの一例を示す説明図である。 図1における情報処理装置の記憶部に記憶されているテーブルTBL1Bの一例に応答可否フラグを付加した説明図である。 図1における情報処理装置の記憶部に記憶されているテーブルTBL2の一例を示す説明図である。 図1における情報処理装置が実行する情報処理のフローチャートである。 本発明の第2の実施の形態に係る情報処理装置の概略構成を主に示すブロック図である。 図7における情報処理装置が実行する情報処理のフローチャートである。 本発明の各実施の形態に係る情報処理装置の変形例の概略構成を主に示すブロック図である。 図9における情報処理装置が実行するフォーマットチェック処理のフローチャートである。 図9における情報処理装置が実行する他のフォーマットチェック処理のフローチャートである。 各実施の形態に係る一連の処理が動作するハードウェアの構成の一例を示すブロック図である。
以下に添付図面を参照しながら、本発明の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
なお、説明は以下の順序で行うものとする。
1.本発明の第1の実施の形態に係る情報処理装置
2.情報処理のフローチャート
3.本発明の第2の実施の形態に係る情報処理装置
4.情報処理のフローチャート
5.本発明の各実施の形態に係る情報処理装置の変形例
6.フォーマットチェック処理のフローチャート
7.他のフォーマットチェック処理のフローチャート
[本発明の第1の実施の形態に係る情報処理装置]
まず、本発明の第1の実施の形態に係る情報処理装置について説明する。図1は、本発明の第1の実施の形態に係る情報処理装置の概略構成を主に示すブロック図である。図1には、外部装置200および情報処理装置100が描かれている。
図1において、外部装置200は、情報処理装置100との間で通信することのできる通信装置である。例えば、外部装置200は、情報処理装置100に記録された情報を読み書きするリーダ/ライタであってもよい。また、外部装置200は、情報処理装置100に実装された機能を利用して任意のアプリケーションをユーザに提供する情報処理装置であってもよい。
一方、情報処理装置100は、典型的には、接触型又は非接触型のICカードやICチップなどとして実現される。また、情報処理装置100は、携帯電話などの情報通信端末に設けられる通信モジュールなどであってもよい。情報処理装置100は、後述するように、自装置の記録する情報の入出力や様々な演算を実行するための命令群を提供する。そして、情報処理装置100は、外部装置200から命令が入力されると、その命令に対応する処理を実行し、外部装置200へ応答を出力する。
情報処理装置100は、通信部110と、オペレーティングシステム(以下、「OS」という。)120とを備える。
通信部110は、本発明の受信部の一例であり、情報処理装置100による外部装置200との間の通信を仲介する通信インタフェースである。外部装置200から情報処理装置100への命令の入力及び情報処理装置100から外部装置200への応答の出力は、通信部110を経由して行われる。例えば、情報処理装置100が外部装置200との間で非接触型の通信を行う場合には、通信部110は、ISO/IEC14443、ISO/IEC18092(別名:NFC(Near Field Communication))などの標準規格に従った通信インタフェースなどとして実現され得る。または、NFCなどの通信インタフェースが別の機器やモジュールとして実現される場合は、通信部100は、その機器と通信するためのインタフェースになり、その機器を経由して外部装置200と通信することになる。例えば、通信モジュールがCLF(ContactLess Front end)として外出しになる場合は、通信部100はETSI(European
Telecommunications Standards Institute)で規定されているHCI/SWPなどのインタフェースを制御するモジュールとして動作する。
OS120は、入力された命令に応じて、情報処理装置100の有する情報の入出力や所定の演算を実行する。本明細書では、情報処理装置100により実行可能な命令の集合を命令群と称する。例えば、OS120はJava Card(登録商標)OSなどであってもよい。例えば、Java CardOSは、本発明の第1のオペレーティングシステムの一例である。
また、OS120は、実行環境130と、アプリケーションA150と、アプリケーションB160と、アプリケーションC170とを備える。
実行環境130は、OS120が命令群を実行するための基盤となるソフトウェア群である。実行環境130は、パケット解釈部132、アプリケーション選択命令生成部134、命令処理部136および記憶部138を主に含む。また、命令処理部136は、命令実行部140およびアプリケーション選択部142を主に含む。
パケット解釈部132は、通信部110が受信した通信パケットが入力されると、通信パケットの内容を解釈し、通信パケットに含まれるOS120に対する命令の種類を識別する。命令の種類としては、例えば、FeliCaOSが搭載されたカードを検知し、OSから情報を取得する情報取得命令、OS120が実行するアプリケーションを選択するためのアプリケーション選択命令やその他の命令がある。このとき、通信パケットに含まれる命令は、一時記憶部(図示しない)に記憶されてもよい。
図2は、図1における情報処理装置100が受信する情報取得命令のフォーマットの一例を示す説明図である。図2において、情報取得命令300は、命令情報302および領域情報304を有する。命令情報302には、例えば、命令の種類を識別するための命令コードや、命令を実行するためのパラメータなどが含まれる。一方、領域情報304には、例えば、FeliCaOS、またはFeliCaOSを模したアプリケーションが保有する所定のメモリ領域を識別するための領域の情報などが含まれる。
パケット解釈部132は、本発明の判別部の一例であり、例えば、命令情報302に含まれる命令コードを参照して、外部装置200から受信した命令が情報取得命令300であると識別した場合は、この命令をアプリケーション選択命令生成部134に入力する。一方、パケット解釈部132は、外部装置200から受信した命令がアプリケーション選択命令やその他の命令であると識別した場合は、これらの命令を命令処理部136に入力する。なお、パケット解釈部132は、外部装置200から受信した命令がアプリケーション選択命令であると識別した場合は、この命令を命令処理部136のアプリケーション選択部142に入力する。そして、その後命令処理部136から上述した命令に対応する応答が出力された場合には、パケット解釈部132は、その応答を通信部110を介して外部装置200に送信する。
アプリケーション選択命令生成部134は、パケット解釈部132により情報取得命令300が入力されると、記憶部138から図4Aに示すような領域情報とアプリケーション識別情報とが関連付けされたテーブルTBL1を読み出す。そして、アプリケーション選択命令生成部134は、読み出したテーブルTBL1を参照して、入力された情報取得命令300に含まれる領域情報304に関連付けされたアプリケーション識別情報を判別する。例えば、情報取得命令300に含まれる領域情報304が“AAAA”である場合は、“0001”がアプリケーション識別情報として判別される。なお、本実施の形態では、アプリケーションA150に対応するアプリケーション識別情報は“0001”であるものとする。アプリケーション識別情報は、Java CardOSなどのOS120が管理しているアプリケーションを識別するための情報である。アプリケーション識別情報を判別した後、アプリケーション選択命令生成部134は、図3に示すような、OS120が実行するアプリケーションを選択するためのアプリケーション選択命令350を生成する。アプリケーション選択命令生成部134は、生成したアプリケーション選択命令350を命令処理部136のアプリケーション選択部142に入力する。
図4Bに示すように、領域情報304に対応する応答可否フラグがTBL1Bに付与されている場合は、「応答不可」のフラグが設定されていたら、アプリケーション選択命令生成部134は領域情報304から関連付けされたアプリケーション識別情報を判別する処理が必要ないと判断し、無応答もしくは、外部装置200から受信した命令に対するエラーを外部装置に返す。「応答可」のフラグが設定されている場合は、前記に記載の通り、アプリケーション選択命令350を生成し、アプリケーション選択部142に前記の命令を渡す。
図3は、図1における情報処理装置100の命令処理部136に入力されるアプリケーション選択命令のフォーマットの一例を示す説明図である。図3において、アプリケーション選択命令350は、命令情報352およびアプリケーション識別情報354を有する。命令情報352には、例えば、命令の種類を識別するための命令コードや、命令を実行するためのパラメータなどが含まれる。一方、アプリケーション識別情報354には、OS120が実行するアプリケーションの識別情報などが含まれる。上記フォーマットはアプリケーション選択命令として外部機器から渡される命令を模したものであるが、アプリケーション選択部142がすでに上記情報を各要素に分解して解釈している場合は、その形態に合わせて入力してもよい。その場合、命令コードはなく、APIのようなモジュール間のインタフェースに対するパラメータ渡しがその1例となる。
命令処理部136は、命令実行部140およびアプリケーション選択部142を主に含む。命令実行部140は、命令処理部136に入力されたアプリケーション選択命令350以外の命令を実行する。アプリケーション選択部142は、本発明の実行部の一例であり、命令処理部136に入力されたアプリケーション選択命令350を実行する。例えば、アプリケーション選択部142は、記憶部138から図5に示すようなアプリケーション識別情報とアプリケーション格納領域とが関連付けされたテーブルTBL2を読み出す。TBL2は、Java CardOSなどのOS120が管理しているアプリケーション識別情報と格納領域を対応付けて管理するテーブルであり、この管理方法は1例であり、必ずしもテーブルではなく、リスト型のように開始地点、終了地点の繰り返しで、アプリケーションの格納領域を管理している場合も想定内である。そして、アプリケーション選択部142は、読み出したテーブルTBL2を参照して、入力されたアプリケーション選択命令350に含まれるアプリケーション識別情報354に関連付けされたアプリケーション格納領域を判別する。例えば、アプリケーション選択命令350に含まれるアプリケーション識別情報354が“0001”である場合は、“0−1000番地”、すなわち、アプリケーションA150が格納されたメモリ番地を指定することで、アプリケーションの実行可能プログラムを判別する。このメモリ番地はJava
CardOSが管理しているメモリを論理的に解釈して番号を振った相対番地を想定しているが、OSが物理的な番地を用いて直接管理する場合は、物理的なメモリの識別子とアドレスなどの絶対番地を採用しても問題ない。アプリケーションの実行可能プログラムを判別した後、命令実行部140は、判別したアプリケーションの実行可能プログラムを実行する。命令処理部136は、命令実行部140やアプリケーション選択部142が実行した命令の応答をパケット解釈部132に出力する。
図4Bに記載される、領域情報に対する応答可否フラグは、前記の実行可能プログラムから、「応答可」「応答不可」の設定が可能であり、実行可能プログラムが持つ状態によって、設定内容が変化する。
アプリケーションが非選択状態になった場合やカードの電源がOFFになった場合、アプリケーションからフラグの設定ができなくなるため、その場合はOSによってデフォルト値の設定、もしくは値の初期化が行われる。
フラグ設定のフローは、OSが起動時にすべてのフラグが初期化され、選択された実行可能プログラムによってフラグの設定がされ、その実行可能プログラムが非選択状態になると、OSが対応するフラグの再初期化を実施する。
OSがフラグを再初期化する場合、OSは非選択された実行可能プログラムが分かるため、そこからアプリケーション識別情報を取り出し、アプリケーション識別情報から領域情報を算出し、その領域情報に対応する応答可否フラグを再初期化する流れになる。
アプリケーションA150、アプリケーションB160、アプリケーションC170は、OS120上で動作する任意のアプリケーションである。本実施の形態では、アプリケーションA150は、例えば、FeliCa(登録商標)OSを模倣したアプリケーションである。このアプリケーションA150は、OS120の実行環境130上で実行されると、FeliCaOSが動作した際に生成される処理結果と等しくなる。例えば、FeliCaOSは、本発明の第2のオペレーティングシステムの一例である。ここで、“アプリケーション”という用語には、アプレットや、より単純なロジックのみを含むソフトウェアなども含まれる。
[情報処理]
以下、図1における情報処理装置100が実行する情報処理について説明する。図6は、図1における情報処理装置100が実行する情報処理のフローチャートである。
図6において、まず、情報処理装置100の通信部110は、外部装置200から通信パケットを受信して(ステップS602)、受信した通信パケットをパケット解釈部132に送信する。
次いで、情報処理装置100のパケット解釈部132は、通信部110から受信した通信パケットの解釈を行う(ステップS604)。そして、情報処理装置100のパケット解釈部132は、ステップS604での通信パケットの解釈により、通信パケットに含まれる命令が上述した情報取得命令であるか否かを判別する(ステップS606)。
ステップS606の判別の結果、通信パケットに含まれる命令が情報取得命令であるときは(ステップS606でYES)、情報処理装置100のパケット解釈部132は、情報取得命令を情報処理装置100のアプリケーション選択命令生成部134に入力する。情報処理装置100のアプリケーション選択命令生成部134は、記憶部138から図4Aに示すテーブルTBL1Aを読み出して(ステップS608)、入力された情報取得命令に含まれる領域情報に関連付けされたアプリケーション識別情報を含む図3に示すアプリケーション選択命令を生成する(ステップS610)。そして、アプリケーション選択命令生成部134は、ステップS610で生成したアプリケーション選択命令を情報処理装置100の命令処理部136におけるアプリケーション選択部142に入力して、ステップS612の処理に進む。
一方、ステップS606の判別の結果、通信パケットに含まれる命令が情報取得命令でないときは(ステップS606でNO)、情報処理装置100のパケット解釈部132は、通信パケットに含まれる命令が上述したアプリケーション選択命令であるか否かを判別する(ステップS618)。
ステップS618の判別の結果、通信パケットに含まれる命令がアプリケーション選択命令であるときは(ステップS618でYES)、情報処理装置100のパケット解釈部132は、アプリケーション選択命令を情報処理装置100の命令処理部136におけるアプリケーション選択部142に入力して、ステップS612の処理に進む。
続くステップS612の処理では、情報処理装置100のアプリケーション選択部142は、入力されたアプリケーション選択命令を実行して、アプリケーションを選択的に実行する(ステップS612)。例えば、情報処理装置100のアプリケーション選択部142は、記憶部138から図5に示すテーブルTBL2を読み出して、入力されたアプリケーション選択命令に含まれるアプリケーション識別情報に対応するアプリケーションを実行する。本実施の形態では、アプリケーションA150は、FeliCaOSを模倣したアプリケーションであり、OS120の実行環境130上で実行されると、FeliCaOSが動作した際に生成される処理結果と等しくなる。そして、ステップS614の処理に進む。
一方、ステップS618の判別の結果、通信パケットに含まれる命令がアプリケーション選択命令でないときは(ステップS618でNO)、情報処理装置100のパケット解釈部132は、その他の命令を情報処理装置100の命令処理部136における命令実行部140に入力する。
次いで、情報処理装置100の命令実行部140は、入力されたその他の命令を実行して(ステップS620)、ステップS614の処理に進む。
続くステップS614の処理では、情報処理装置100の命令処理部136は、命令実行部140またはアプリケーション選択部142において実行した命令の実行結果を含む応答を生成する(ステップS614)。そして、情報処理装置100の命令処理部136は、ステップS614で生成した応答を情報処理装置100のパケット解釈部132に入力する。
次いで、情報処理装置100のパケット解釈部132は、入力された応答を通信部110を介して外部装置200に送信して(ステップS616)、本処理を終了する。
図6の情報処理によれば、通信パケットに含まれる命令が情報取得命令であるときに、情報取得命令に含まれる領域情報に関連付けされたアプリケーション識別情報を含むアプリケーション選択命令を生成して、生成したアプリケーション選択命令を実行することにより、アプリケーションを選択的に実行する。例えば、情報処理装置100において、FeliCaOSを搭載する代わりに、OS120にFeliCaOSを模倣したアプリケーションA150を組み込む場合、通常のFeliCaOSで使用している伝送プロトコルやコマンドフォーマットは利用できない。しかし、情報取得命令は通常、FeliCaOSで使用している伝送プロトコルに対応するものである。上述した情報処理によりFeliCaOSを模倣したアプリケーションA150が選択されて、OS120の実行環境130上で実行されると、FeliCaOSが動作した際に生成される処理結果と等しくなる。これにより、外部装置200からの命令の仕様を変更することなく、通常とは異なる実行環境上で動作するOSを模倣したアプリケーションに対して、外部装置200からの命令を実行させることができる。
[本発明の第2の実施の形態に係る情報処理装置]
以下、本発明の第2の実施の形態に係る情報処理装置について説明する。本発明の第2の実施の形態に係る情報処理装置は、上述した本発明の第1の実施の形態に係る情報処理装置と比較して、アプリケーション選択命令生成部を有していない点とが相違する。以下では、本発明の第2の実施の形態に係る情報処理装置について、主に本発明の第1の実施の形態に係る情報処理装置との相違点について説明し、本発明の第1の実施の形態に係る情報処理装置と同一構成については詳細な説明を省略する。図7は、本発明の第2の実施の形態に係る情報処理装置の概略構成を主に示すブロック図である。図7には、外部装置500および情報処理装置400が描かれている。
図7において、情報処理装置400は、通信部410と、OS420とを備える。また、OS420は、実行環境430と、アプリケーションA450と、アプリケーションB460と、アプリケーションC470とを備える。通信部410は、本発明の受信部の一例である。実行環境430は、パケット解釈部432、命令処理部436および記憶部438を主に含む。また、命令処理部436は、命令実行部440およびアプリケーション選択部442を主に含む。
パケット解釈部432は、本発明の判別部の一例であり、通信部410が受信した通信パケットが入力されると、通信パケットの内容を解釈し、通信パケットに含まれるOS420に対する命令の種類を識別する。また、パケット解釈部432は、外部装置500から受信した命令が情報取得命令またはアプリケーション選択命令であると識別した場合は、これらの命令を命令処理部436におけるアプリケーション選択部442に入力する。一方、パケット解釈部432は、外部装置500から受信した命令がその他の命令であると識別した場合は、この命令を命令処理部436における命令実行部440に入力する。そして、その後命令処理部436から上述した命令に対応する応答が出力された場合には、パケット解釈部432は、その応答を通信部410を介して外部装置500に送信する。
命令処理部436は、命令実行部440およびアプリケーション選択部442を主に含む。命令実行部440は、入力されたその他の命令を実行する。アプリケーション選択部442は、本発明の実行部の一例であり、命令処理部436に入力された情報取得命令またはアプリケーション選択命令を実行する。例えば、アプリケーション選択部442は、情報取得命令の実行において、記憶部438から図4Aに示すような領域情報とアプリケーションとが関連付けされたテーブルTBL1Aを読み出す。そして、アプリケーション選択部442は、読み出したテーブルTBL1Aを参照して、入力された情報取得命令に含まれる領域情報に関連付けされたアプリケーション識別情報を判別する。例えば、情報取得命令に含まれる領域情報が“AAAA”である場合は、“0001”、すなわち、実行するアプリケーション識別情報として判別される。アプリケーション識別情報を判別した後、アプリケーション選択部442は、指定されたアプリケーション識別情報を用いて、判別したアプリケーションを呼び出す。アプリケーション選択部442は図5に示すようなTBL2を用いてアプリケーション識別情報からアプリケーション格納位置を判明させる。命令処理部436は、命令実行部440やアプリケーション選択部442が実行した命令の応答をパケット解釈部432に出力する。
アプリケーションA450、アプリケーションB460、アプリケーションC470は、OS420上で動作する任意のアプリケーションである。本実施の形態では、アプリケーションA450は、例えば、FeliCa(登録商標)OSを模倣したアプリケーションである。このアプリケーションA450は、OS420の実行環境430上で実行されると、FeliCaOSが動作した際に生成される処理結果と等しくなる。
[情報処理]
以下、図7における情報処理装置400が実行する情報処理について説明する。図8は、図7における情報処理装置400が実行する情報処理のフローチャートである。
図8において、まず、情報処理装置400の通信部410は、外部装置500から通信パケットを受信して(ステップS902)、受信した通信パケットをパケット解釈部432に送信する。
次いで、情報処理装置400のパケット解釈部432は、通信部410から受信した通信パケットの解釈を行う(ステップS904)。そして、情報処理装置400のパケット解釈部432は、ステップS904での通信パケットの解釈により、通信パケットに含まれる命令が上述した情報取得命令であるか否かを判別する(ステップS906)。
ステップS906の判別の結果、通信パケットに含まれる命令が情報取得命令であるときは(ステップS906でYES)、情報処理装置400のパケット解釈部432は、情報取得命令を情報処理装置400の命令処理部436におけるアプリケーション選択部442に入力する。情報処理装置100のアプリケーション選択部442は、記憶部438から図4A,5に示すテーブルTBL1A,2を読み出して(ステップS908)、ステップS910の処理に進む。
一方、ステップS906の判別の結果、通信パケットに含まれる命令が情報取得命令でないときは(ステップS906でNO)、情報処理装置400のパケット解釈部432は、通信パケットに含まれる命令が上述したアプリケーション選択命令であるか否かを判別する(ステップS916)。
ステップS916の判別の結果、通信パケットに含まれる命令がアプリケーション選択命令であるときは(ステップS916でYES)、情報処理装置400のパケット解釈部432は、アプリケーション選択命令を情報処理装置400の命令処理部436におけるアプリケーション選択部442に入力して、ステップS910の処理に進む。
続くステップS910の処理では、情報処理装置400のアプリケーション選択部442は、入力された情報取得命令またはアプリケーション選択命令を実行して、アプリケーションを選択的に実行する(ステップS910)。例えば、情報処理装置400のアプリケーション選択部442は、情報取得命令が入力された場合、ステップS908で読み出したテーブルTBL1A,2を参照して、入力された情報取得命令に含まれる領域情報に対応するアプリケーションを実行する。本実施の形態では、アプリケーションA450は、FeliCaOSを模倣したアプリケーションであり、OS420の実行環境430上で実行されると、FeliCaOSが動作した際に生成される処理結果と等しくなる。そして、ステップS912の処理に進む。
一方、ステップS916の判別の結果、通信パケットに含まれる命令がアプリケーション選択命令でないときは(ステップS916でNO)、情報処理装置400のパケット解釈部432は、その他の命令を情報処理装置400の命令処理部436における命令実行部440に入力する。
次いで、情報処理装置400の命令実行部440は、入力されたその他の命令を実行して(ステップS918)、ステップS912の処理に進む。
続くステップS912の処理では、情報処理装置400の命令処理部436は、命令実行部440またはアプリケーション選択部442において実行した命令の実行結果を含む応答を生成する(ステップS912)。そして、情報処理装置400の命令処理部436は、ステップS912で生成した応答を情報処理装置400のパケット解釈部432に入力する。
次いで、情報処理装置400のパケット解釈部432は、入力された応答を通信部410を介して外部装置500に送信して(ステップS914)、本処理を終了する。
図8の情報処理によれば、通信パケットに含まれる命令が情報取得命令であるときに、情報取得命令を実行するため、情報取得命令に含まれる領域情報に対応するアプリケーションを選択的に実行する。これにより、上述した図6の情報処理と同様の効果を奏することができる。また、図7における情報処理装置400は、図1における情報処理装置100と比較して、アプリケーション選択命令生成部134を備えていないので、上述した情報処理を単純化することができる。
[本発明の各実施の形態に係る情報処理装置の変形例]
以下、本発明の各実施の形態に係る情報処理装置100,400の変形例について説明する。図9は、本発明の各実施の形態に係る情報処理装置100,400の変形例の概略構成を主に示すブロック図である。図9には、外部装置100,500および情報処理装置100,400が描かれている。
図9において、情報処理装置100,400は、通信部110,410と、OS120,420とを備える。また、OS120,420は、実行環境130,430と、アプリケーションA150,450と、アプリケーションB160,460と、アプリケーションC170,470とを備える。実行環境130,430は、パケット解釈部132,432、フォーマットチェック部600および命令処理部136,436を主に含む。
パケット解釈部132,432は、通信部110,410が受信した通信パケットが入力されると、通信パケットの内容を解釈し、通信パケットに含まれるOS120,420に対する命令の種類を識別する。そして、パケット解釈部132,432は、外部装置200,500から受信した命令をフォーマットチェック部600に入力する。フォーマットチェック部600は、パケット解釈部132,432から入力された命令のフォーマットのチェックを行う。そして、フォーマットチェック部600は、命令のフォーマットのチェックの結果、命令が所定のフォーマットであるときは、命令を命令処理部136,436に入力する。命令処理部136,436は、フォーマットチェック部600から入力された命令を実行する。
[フォーマットチェック処理]
以下、図9における情報処理装置が実行するフォーマットチェック処理について説明する。図10は、図9における情報処理装置100,400が実行するフォーマットチェック処理のフローチャートである。本処理は、情報処理装置100,400において、上述した図6または図8の情報処理を実行する際に外部装置200,600から受信する通信パケットのフォーマットのチェックを行う処理である。また、本処理は、情報処理装置100,400のフォーマットチェック部600が実行する処理である。
図10において、まず、情報処理装置100,400のフォーマットチェック部600は、上述した図6または図8の情報処理を実行した結果、情報処理装置100,400においてアプリケーションA150,450が選択されているか否かを判別する(ステップS1102)。
ステップS1102の判別の結果、情報処理装置100,400においてアプリケーションA150,450が選択されているときは(ステップS1102でYES)、情報処理装置100,400のフォーマットチェック部600は、命令のフォーマットのチェックを停止して、すなわち、全ての命令を命令処理部136,436に入力して(ステップS1104)、本処理を終了する。
一方、ステップS1102の判別の結果、情報処理装置100,400においてアプリケーションA150,450が選択されていないときは(ステップS1102でNO)、情報処理装置100,400のフォーマットチェック部600は、命令のフォーマットのチェックを実施して、命令が所定のフォーマットであるときは、命令を命令処理部136,436に入力して(ステップS1106)、本処理を終了する。
図10のフォーマットチェック処理によれば、情報処理装置100,400においてアプリケーションA150,450が選択されているときは、フォーマットチェック部600での命令のフォーマットのチェックが停止される。上述したようにアプリケーションA150,450は、FeliCaOSを模倣したアプリケーションであり、OS120,420の実行環境130,430上で動作されると、FeliCaOSが動作した際に生成される処理結果と等しくなる。Java CardOSに入力される命令と、FeliCaOSに入力される命令とは、そのフォーマットは異なるため、フォーマットチェック部600での命令のフォーマットのチェックを停止することにより、FeliCaOSに対して入力される命令をFeliCaOSを模倣したアプリケーションに確実に渡すことができる。
なお、図10のフォーマットチェック処理では、アプリケーションの選択状態によって、フォーマットチェックの必要性の可否を決めているが、通信部110,410が命令を受信する形態によって、フォーマットチェックが必要か否かを判断することも可能である。
通信部110,410は、NFCのような非接触の通信機能を有し外部機器と通信する場合や、通信部に別の機器、チップが繋がっており、そこから命令を受信する場合など、多様な入力形態を実現することが可能であり、その経路によって、フォーマットチェックが必要か否かを判断することができる。
[他のフォーマットチェック処理]
以下、図9における情報処理装置が実行する他のフォーマットチェック処理について説明する。図11は、図9における情報処理装置100,400が実行する他のフォーマットチェック処理のフローチャートである。本処理は、情報処理装置100,400において、上述した図6または図8の情報処理を実行する際に外部装置200,600から受信する通信パケットのフォーマットのチェックを行う処理である。また、本処理は、情報処理装置100,400のフォーマットチェック部600が実行する処理である。
図11において、まず、情報処理装置100,400のフォーマットチェック部600は、上述した図6または図8の情報処理を実行した結果、情報処理装置100,400における通信プロトコルが所定の通信プロトコルであるか否かを判別する(ステップS1202)。
ステップS1202の判別の結果、情報処理装置100,400における通信プロトコルが所定の通信プロトコルであるときは(ステップS1202でYES)、情報処理装置100,400のフォーマットチェック部600は、命令のフォーマットのチェックを停止して、すなわち、全ての命令を命令処理部136,436に入力して(ステップS1204)、本処理を終了する。
一方、ステップS1202の判別の結果、情報処理装置100,400における通信プロトコルが所定の通信プロトコルでないときは(ステップS1202でNO)、情報処理装置100,400のフォーマットチェック部600は、命令のフォーマットのチェックを実施して、命令が所定のフォーマットであるときは、命令を命令処理部136,436に入力して(ステップS1206)、本処理を終了する。
図11のフォーマットチェック処理によれば、情報処理装置100,400における通信プロトコルが所定の通信プロトコルであるときは、フォーマットチェック部600での命令のフォーマットのチェックが停止される。上述したようにアプリケーションA150,450は、FeliCaOSを模倣したアプリケーションであり、OS120,420の実行環境130,430上で動作されると、FeliCaOSが動作した際に生成される処理結果と等しくなる。Java CardOSに入力される命令と、FeliCaOSに入力される命令とは、そのフォーマットは異なるため、フォーマットチェック部600での命令のフォーマットのチェックを停止することにより、FeliCaOSに対して入力される命令を、FeliCaOSを模倣したアプリケーションに確実に渡すことができる。
なお、本明細書において説明した第1及び第2の実施の形態に係る一連の処理は、典型的には情報処理装置100,400に設けられたコンピュータ上で動作するソフトウェアにより実現される。図12は、各実施の形態に係る一連の処理が動作するハードウェアの構成の一例を示すブロック図である。
図12において、CPU902は、情報処理装置100,400の動作全般を制御する。ROM(Read Only Memory)904には、一連の処理の一部又は全部を記述したプログラム又はデータが格納される。RAM906には、CPU902により実行されるプログラムやデータなどが一時的に記憶される。不揮発性メモリ908は、EEPROM(Electrically Erasable and Programmable ROM)などであり、後から追加したアプリケーションを格納することができる。
CPU902、ROM904、RAM906、及び不揮発性メモリ908は、バス910を介して相互に接続される。バス910にはさらに、入出力インタフェース912が接続される。
CPU902は、ROM904、RAM906、及び不揮発性メモリ908に接続することにより、上述したパケット解釈部132,432、アプリケーション選択命令生成部134、命令処理部136,436、アプリケーション選択部142,442、命令実行部140,440として機能する。通信回路914は、通信部110,410として機能する。
入出力インタフェース912は、CPU902、ROM904、RAM906、及び不揮発性メモリ908と、通信回路914とを接続するためのインタフェースである。
通信回路914は、所定の通信プロトコルに従い、外部装置200,500との間で通信パケットを送受信する。通信回路914は、例えば、ISO14443の標準仕様に従った非接触型の通信、又はISO7816の標準仕様に従った接触型の通信などをサポートしてもよい。
以上、添付図面を参照しながら本発明の好適な実施の形態について詳細に説明したが、本発明はかかる例に限定されない。本発明の属する技術の分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本発明の技術的範囲に属するものと了解される。
例えば、図6、図8、図10、図11を用いて説明した処理を、必ずしもフローチャートに記載された順序に沿って実行しなくてもよい。各処理ステップは、並列的あるいは個別に独立して実行される処理を含んでもよい。
また、例えば、各OSの有するアプリケーションの数は、本明細書に示した数に限定されない。アプリケーションは、例えば前述したEEPROMの内容を書き換えるなどの方法により、必要に応じて追加又は削除され得る。
100,400 情報処理装置
110,410 通信部
120,420 OS
130,430 実行環境
132,432 パケット解釈部
134 アプリケーション選択命令生成部
136,436 命令処理部
138,438 記憶部
140,440 命令実行部
142,442 アプリケーション選択部
150,450 アプリケーションA
160,460 アプリケーションB
170,470 アプリケーションC
200,500 外部装置
600 フォーマットチェック部

Claims (9)

  1. 第1のオペレーティングシステムに入力される命令、および前記第1のオペレーティングシステムとは異なる第2のオペレーティングシステムに入力される命令を受信する受信部と、
    前記受信部が受信した所定の命令に含まれる所定の情報と、アプリケーションを識別するための情報とが関連付けされたテーブルを記憶する記憶部と、
    前記受信部が受信した所定の命令と、前記記憶部に記憶されたテーブルとに基づいて、アプリケーションを選択的に実行するためのアプリケーション選択命令を生成する生成部と、
    前記生成部が生成したアプリケーション選択命令を実行して、アプリケーションを選択的に実行する実行部と、
    を備える、情報処理装置。
  2. 前記実行部は、前記第1のオペレーティングシステムの実行環境上で所定のアプリケーションを実行することにより、前記第2のオペーティングシステムが生成する処理結果と同様の処理結果を出力する、請求項1に記載の情報処理装置。
  3. 前記所定の命令は、前記第2のオペレーティングシステムに対応する所定のメモリ領域を選択するための情報取得命令であり、
    前記所定の情報は、前記情報取得命令に含まれる、前記所定のメモリ領域を識別するための領域情報である、請求項1または2に記載の情報処理装置。
  4. 前記受信部が受信した命令の種類を判別する判別部をさらに備え、
    前記判別部は、前記命令の種類の判別において、前記命令が前記情報取得命令であるか否かの判別を行った後に、前記命令が前記アプリケーション選択命令であるか否かの判別を行う、請求項3に記載の情報処理装置。
  5. 前記受信部が受信した命令のフォーマットのチェックを行うフォーマットチェック部を備え、
    前記フォーマットチェック部は、前記実行部によって所定のアプリケーションが実行されている場合は、前記命令のフォーマットのチェックを停止する、請求項1〜4のいずれか1項に記載の情報処理装置。
  6. 前記受信部が命令を受信した場合、前記記憶部に記憶されたテーブルに付加された応答可否フラグの状態によって、受信した命令に対応する応答判断を行う、請求項1〜5のいずれか1項に記載の情報処理装置。
  7. 第1のオペレーティングシステムに入力される命令、および前記第1のオペレーティングシステムとは異なる第2のオペレーティングシステムに入力される命令を受信する受信ステップと、
    前記受信ステップで受信した所定の命令と、前記受信ステップで受信した所定の命令に含まれる所定の情報とアプリケーションを識別するための情報とが関連付けされたテーブルとに基づいて、アプリケーションを選択的に実行するためのアプリケーション選択命令を生成する生成ステップと、
    前記生成ステップで生成したアプリケーション選択命令を実行して、アプリケーションを選択的に実行する実行ステップと、
    を有する、情報処理方法。
  8. コンピュータを、
    第1のオペレーティングシステムに入力される命令、および前記第1のオペレーティングシステムとは異なる第2のオペレーティングシステムに入力される命令を受信する受信部と、
    前記受信部が受信した所定の命令に含まれる所定の情報と、アプリケーションを識別するための情報とが関連付けされたテーブルを記憶する記憶部と、
    前記受信部が受信した所定の命令と、前記記憶部に記憶されたテーブルとに基づいて、アプリケーションを選択的に実行するためのアプリケーション選択命令を生成する生成部と、
    前記生成部が生成したアプリケーション選択命令を実行して、アプリケーションを選択的に実行する実行部と、
    として機能させるためのプログラム。
  9. 第1のオペレーティングシステムに入力される命令、および前記第1のオペレーティングシステムとは異なる第2のオペレーティングシステムに入力される命令を受信する受信部と、
    前記受信部が受信した所定の命令に含まれる所定の情報と、アプリケーションの情報とが関連付けされたテーブルを記憶する記憶部と、
    前記受信部が受信した所定の命令と、前記記憶部に記憶されたテーブルとに基づいて、アプリケーションを選択的に実行する実行部と、
    を備える、情報処理装置。

JP2009277924A 2009-12-07 2009-12-07 情報処理装置、情報処理方法およびプログラム Pending JP2011118837A (ja)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP2009277924A JP2011118837A (ja) 2009-12-07 2009-12-07 情報処理装置、情報処理方法およびプログラム
EP10192517.0A EP2339551A3 (en) 2009-12-07 2010-11-25 Information processing device, information processing method and program
US12/927,889 US9208633B2 (en) 2009-12-07 2010-11-29 Information processing device, information processing method and program
CN201010567122.0A CN102087715B (zh) 2009-12-07 2010-11-30 信息处理设备、信息处理方法和程序
US14/937,103 US10268494B2 (en) 2009-12-07 2015-11-10 Information processing device, information processing method and program
US16/281,744 US10990422B2 (en) 2009-12-07 2019-02-21 Information processing device, information processing method and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009277924A JP2011118837A (ja) 2009-12-07 2009-12-07 情報処理装置、情報処理方法およびプログラム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2014115561A Division JP5943036B2 (ja) 2014-06-04 2014-06-04 情報処理装置、情報処理方法およびプログラム

Publications (1)

Publication Number Publication Date
JP2011118837A true JP2011118837A (ja) 2011-06-16

Family

ID=43798253

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009277924A Pending JP2011118837A (ja) 2009-12-07 2009-12-07 情報処理装置、情報処理方法およびプログラム

Country Status (4)

Country Link
US (3) US9208633B2 (ja)
EP (1) EP2339551A3 (ja)
JP (1) JP2011118837A (ja)
CN (1) CN102087715B (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2498181A2 (en) 2011-03-08 2012-09-12 Sony Corporation Information processing device, information processing method, and program
CN103295320A (zh) * 2013-05-06 2013-09-11 深圳市国民电子商务有限公司 一种一卡通互联互通的系统及方法
WO2013179791A1 (ja) 2012-05-31 2013-12-05 ソニー株式会社 情報処理装置、情報処理方法、およびプログラム
US9158598B2 (en) 2012-01-17 2015-10-13 Sony Corporation Apparatus, method, program and system for processing information utilizing a multi-platform capable of managing a plurality of applications
US20230360020A1 (en) * 2020-09-28 2023-11-09 Sony Group Corporation Communication processing device, communication processing system, communication control method, and program

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011118837A (ja) 2009-12-07 2011-06-16 Sony Corp 情報処理装置、情報処理方法およびプログラム
US8255634B2 (en) 2010-08-11 2012-08-28 Lsi Corporation Apparatus and methods for look-ahead virtual volume meta-data processing in a storage controller
US8261003B2 (en) 2010-08-11 2012-09-04 Lsi Corporation Apparatus and methods for managing expanded capacity of virtual volumes in a storage system
US8176218B2 (en) * 2010-08-11 2012-05-08 Lsi Corporation Apparatus and methods for real-time routing of received commands in a split-path architecture storage controller
CN102624718A (zh) * 2012-03-02 2012-08-01 东信和平智能卡股份有限公司 适用于双界面Java智能卡通讯协议的控制方法及系统
KR101974820B1 (ko) * 2012-09-10 2019-08-23 삼성전자주식회사 기기 제어 방법 및 이를 수행하는 기기
US10025674B2 (en) * 2013-06-07 2018-07-17 Microsoft Technology Licensing, Llc Framework for running untrusted code
CN104753569B (zh) * 2013-12-29 2018-02-23 中国移动通信集团公司 一种配置非接触参数的方法、nfc芯片及nfc设备
JP6349783B2 (ja) * 2014-02-28 2018-07-04 富士通株式会社 端末装置、サーバ装置、デバイスドライバプログラム及び外部周辺機器制御方法
CN106411714B (zh) * 2016-11-02 2019-09-20 天脉聚源(北京)科技有限公司 一种处理双方交互的方法及装置
CN108073397B (zh) * 2017-12-21 2020-10-16 沈阳鼓风机集团自动控制系统工程有限公司 自动编程方法及电子设备
EP4270016A3 (en) 2018-07-24 2024-02-07 Magic Leap, Inc. Temperature dependent calibration of movement detection devices
JP7609844B2 (ja) 2019-07-26 2025-01-07 マジック リープ, インコーポレイテッド 拡張現実のためのシステムおよび方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11120300A (ja) * 1997-10-09 1999-04-30 Fujitsu Ltd 可搬型カード媒体,可搬型カード媒体のメモリ空間管理方法,可搬型カード媒体の発行方法および可搬型カード媒体のプログラムデータ書込方法並びにメモリ空間管理プログラムが記録されたコンピュータ読取可能な記録媒体
JP2004139244A (ja) * 2002-10-16 2004-05-13 Dainippon Printing Co Ltd Icカード及びicカードプログラム
JP2009271836A (ja) * 2008-05-09 2009-11-19 Dainippon Printing Co Ltd ワンタイムパスワードの生成方法、icカードシステム及びicカード

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3195122B2 (ja) 1993-04-26 2001-08-06 大日本印刷株式会社 Icカードに与える命令フォーマットのチェック方法
JP3574231B2 (ja) * 1995-08-21 2004-10-06 富士通株式会社 計算機ネットワークのシミュレータ装置
US6808111B2 (en) * 1998-08-06 2004-10-26 Visa International Service Association Terminal software architecture for use with smart cards
JP4090350B2 (ja) 2000-07-07 2008-05-28 富士通株式会社 Icカード
JP2002279372A (ja) * 2001-03-15 2002-09-27 Nippon Telegr & Teleph Corp <Ntt> Icカード及びicカードのアプリケーション管理方法
JP2003030596A (ja) 2001-07-13 2003-01-31 Hitachi Ltd 論理チャネル管理機能付き記憶装置
JP4742469B2 (ja) * 2001-09-03 2011-08-10 大日本印刷株式会社 複数のosを用いるicカード、icカード処理装置および処理方法
US7213241B2 (en) * 2002-07-02 2007-05-01 Intel Corporation Methods and apparatus for dispatching Java™ software as an application managed by an operating system control manager
JP4217455B2 (ja) * 2002-10-15 2009-02-04 キヤノン株式会社 周辺装置、情報処理方法、および制御プログラム
JP4184751B2 (ja) 2002-10-29 2008-11-19 大日本印刷株式会社 Icカードおよびicカードにおけるアプリケーションプログラム選択方法
EP1530137A1 (en) * 2003-11-10 2005-05-11 Robert Bosch Gmbh Simulation system and computer-implemented method for simulation and verifying a control system
US20050105559A1 (en) * 2003-11-14 2005-05-19 Santera Systems, Inc. Methods and systems for providing transport of media gateway control commands using high-level datalink control (HDLC) protocol
JP4617683B2 (ja) 2004-02-24 2011-01-26 ソニー株式会社 半導体集積回路,携帯モジュールおよびメッセージ通信方法。
JP2005301657A (ja) 2004-04-12 2005-10-27 Dainippon Printing Co Ltd 複数のコマンドテーブルを書き換え可能なメモリに記憶したicカードおよびコマンドの実行方法
JP4763332B2 (ja) * 2004-09-03 2011-08-31 株式会社エヌ・ティ・ティ・ドコモ 移動体端末装置並びに非接触カード機能管理システム及び非接触カード機能取得システム
JP2007122289A (ja) 2005-10-26 2007-05-17 Dainippon Printing Co Ltd 複数のオペレーティングシステムを実装したicカード、及び、icカードプログラム
US20090166421A1 (en) * 2006-02-15 2009-07-02 Dpd Patent Trust Ltd Rfid reader / card combination to convert a contact smartcard reader to contactless
US20180262388A1 (en) * 2006-09-25 2018-09-13 Weaved, Inc. Remote device deployment
US20100043016A1 (en) * 2006-10-26 2010-02-18 Panasonic Corporation Application management device and application management method
US8225375B2 (en) * 2006-12-28 2012-07-17 Canon Kabushiki Kaisha Information processing system, information processing apparatus and method and program therefor
US7748609B2 (en) * 2007-08-31 2010-07-06 Gemalto Inc. System and method for browser based access to smart cards
US8185609B2 (en) * 2007-11-27 2012-05-22 The Boeing Company Method and apparatus for processing commands in an aircraft network
US20110010755A1 (en) * 2007-12-13 2011-01-13 Jukka Tapio Virtanen Interaction between secured and unsecured environments
JP2009277924A (ja) 2008-05-15 2009-11-26 Bridgestone Corp 光透過性電磁波シールド材及びその製造方法
CN101729502B (zh) * 2008-10-23 2012-09-05 中兴通讯股份有限公司 密钥分发方法和系统
JP2010152704A (ja) * 2008-12-25 2010-07-08 Hitachi Ltd 計算機システムの運用管理システム及び管理方法
US8204734B2 (en) * 2008-12-29 2012-06-19 Verizon Patent And Licensing Inc. Multi-platform software application simulation systems and methods
CN101866463A (zh) * 2009-04-14 2010-10-20 中兴通讯股份有限公司 一种eNFC终端、eNFC智能卡及其通信方法
JP2011118837A (ja) * 2009-12-07 2011-06-16 Sony Corp 情報処理装置、情報処理方法およびプログラム
JP4965634B2 (ja) * 2009-12-07 2012-07-04 インターナショナル・ビジネス・マシーンズ・コーポレーション シミュレーション・システムの動作制御方法、プログラム及びシステム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11120300A (ja) * 1997-10-09 1999-04-30 Fujitsu Ltd 可搬型カード媒体,可搬型カード媒体のメモリ空間管理方法,可搬型カード媒体の発行方法および可搬型カード媒体のプログラムデータ書込方法並びにメモリ空間管理プログラムが記録されたコンピュータ読取可能な記録媒体
JP2004139244A (ja) * 2002-10-16 2004-05-13 Dainippon Printing Co Ltd Icカード及びicカードプログラム
JP2009271836A (ja) * 2008-05-09 2009-11-19 Dainippon Printing Co Ltd ワンタイムパスワードの生成方法、icカードシステム及びicカード

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2498181A2 (en) 2011-03-08 2012-09-12 Sony Corporation Information processing device, information processing method, and program
EP3531281A1 (en) 2011-03-08 2019-08-28 Sony Corporation Information processing device, information processing method, and program
US9158598B2 (en) 2012-01-17 2015-10-13 Sony Corporation Apparatus, method, program and system for processing information utilizing a multi-platform capable of managing a plurality of applications
US10599448B2 (en) 2012-01-17 2020-03-24 Sony Corporation Information processing apparatus, IC chip, information processing method, and information processing system
US11119791B2 (en) 2012-01-17 2021-09-14 Sony Corporation Information processing apparatus, IC chip, information processing method, program, and information processing system
WO2013179791A1 (ja) 2012-05-31 2013-12-05 ソニー株式会社 情報処理装置、情報処理方法、およびプログラム
JPWO2013179791A1 (ja) * 2012-05-31 2016-01-18 ソニー株式会社 情報処理装置、情報処理方法、およびプログラム
US10579993B2 (en) 2012-05-31 2020-03-03 Sony Corporation Information processing device, information processing method, and program
CN103295320A (zh) * 2013-05-06 2013-09-11 深圳市国民电子商务有限公司 一种一卡通互联互通的系统及方法
US20230360020A1 (en) * 2020-09-28 2023-11-09 Sony Group Corporation Communication processing device, communication processing system, communication control method, and program

Also Published As

Publication number Publication date
CN102087715A (zh) 2011-06-08
US9208633B2 (en) 2015-12-08
EP2339551A3 (en) 2014-04-02
EP2339551A2 (en) 2011-06-29
US20190179654A1 (en) 2019-06-13
US10268494B2 (en) 2019-04-23
US20110138390A1 (en) 2011-06-09
CN102087715B (zh) 2015-05-20
US10990422B2 (en) 2021-04-27
US20160077849A1 (en) 2016-03-17

Similar Documents

Publication Publication Date Title
JP2011118837A (ja) 情報処理装置、情報処理方法およびプログラム
JP5668051B2 (ja) Nfcシステムを含む移動通信装置内の少なくとも1つのアプリケーションを事前に選択する方法
JP6962359B2 (ja) 情報処理装置、情報処理方法、およびプログラム
US9946558B2 (en) Apparatus, method and system for activating an operating system based on a unified command
US20080197975A1 (en) Radio Frequency Identification Data Processing System
US8931705B2 (en) IC card, mobile electronic device and data processing method in IC card
US9021504B2 (en) Method and device for automatically selecting an application that can be implemented by said device
CN106663017B (zh) 实现主机卡模拟的方法、终端、数据路由方法及装置
CN101866514B (zh) 一种安装非接触支付应用的方法、智能卡及移动终端
CN104335173A (zh) 信息处理设备、信息处理方法和程序
JP5943036B2 (ja) 情報処理装置、情報処理方法およびプログラム
CN112749355B (zh) 页面显示方法、装置、终端、服务器以及存储介质
CN101425120B (zh) 读卡器及其执行方法
JP2012208910A (ja) 携帯可能電子装置、及び携帯可能電子装置の処理システム
JP2015125627A (ja) Icカードおよび携帯可能電子装置
JP5684059B2 (ja) Icカード、及びicカードの制御方法
JP2012194698A (ja) 携帯可能電子装置、携帯可能電子装置の処理装置、及び携帯可能電子装置の処理システム
JP6092342B2 (ja) 非接触式携帯可能電子装置、及び非接触式携帯可能電子装置の発行方法
CN112712356B (zh) 一种配置Java Card参数的方法和系统
JP5724701B2 (ja) Icチップ、icチップにおける処理方法、icチップ用処理プログラム、及び携帯端末
JP6515850B2 (ja) 情報処理装置、icチップ、情報処理方法、プログラム、及び情報処理システム
JP5875772B2 (ja) 携帯可能電子装置、携帯可能電子装置の制御方法、及び携帯可能電子装置の処理システム
CN119271363A (zh) 任务执行的方法及相关装置
JP2014056449A (ja) 情報処理装置、通信システム、情報処理方法およびプログラム
JP2012198676A (ja) 携帯可能電子装置、携帯可能電子装置の処理装置、及び携帯可能電子装置の処理システム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20121120

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131120

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131126

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140124

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20140304

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140604

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20140611

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20140815