JP5420622B2 - プログラム - Google Patents

プログラム Download PDF

Info

Publication number
JP5420622B2
JP5420622B2 JP2011242937A JP2011242937A JP5420622B2 JP 5420622 B2 JP5420622 B2 JP 5420622B2 JP 2011242937 A JP2011242937 A JP 2011242937A JP 2011242937 A JP2011242937 A JP 2011242937A JP 5420622 B2 JP5420622 B2 JP 5420622B2
Authority
JP
Japan
Prior art keywords
native
intermediate language
library
type
api
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.)
Expired - Fee Related
Application number
JP2011242937A
Other languages
English (en)
Other versions
JP2013097745A (ja
Inventor
嵩志 小熊
真吾 上野
理恵 笠井
敏英 東森
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.)
Kyocera Document Solutions Inc
Original Assignee
Kyocera Document Solutions Inc
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 Kyocera Document Solutions Inc filed Critical Kyocera Document Solutions Inc
Priority to JP2011242937A priority Critical patent/JP5420622B2/ja
Priority to CN2012104073178A priority patent/CN103092599A/zh
Priority to EP12191283.6A priority patent/EP2590071A1/en
Priority to US13/669,052 priority patent/US20130185699A1/en
Publication of JP2013097745A publication Critical patent/JP2013097745A/ja
Application granted granted Critical
Publication of JP5420622B2 publication Critical patent/JP5420622B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)

Description

本発明は、複数種の中間言語で、これらに共通のネイティブライブラリを利用するソフトウェア開発キット、これを用いて作成された画像形成装置用拡張アプリケーション及びこのアプリケーションを備えた携帯端末装置に関する。
セキュリティを確保するため、企業内に私用コンピュータを持ち込むことは一般に禁止されている。
しかしながら、スマートフォンの普及に伴い、一定条件の下でこの禁止を解除することにより、ビジネス上の処理の効率化が図られようとしている。
iPhone(登録商標)、Andoroid(登録商標)及びWindows Phone(登録商標)などのスマートフォンは、それぞれ異なるプラットフォーム及びプログラミング言語を用いているので、複数種のスマートフォンに対するアプリケーション開発期間が長くなる原因となる。
一方、スマートフォンはデスクトップコンピュータに比べ、CPU能力やメモリ容量の点で劣るものの、データサイズが比較的大きい画像を処理する必要があるので、高速処理が要求される。この要求に応えるため、機械語に近くプラットフォームに非依存のC言語が用いられている。
しかし、C言語は低級言語であるので、これを用いてネイティブライブラリを開発するとともにアプリケーションを開発すると、その期間が長くなる。このため、C言語は高速処理が要求される部分のみに用いられている。
C言語で作成されコンパイルされたネイティブライブラリは、JNI(Java Native Interface)やC++/CLI(Common Language Infrastructure)を用いて、Java(登録商標)やC#で作成されコンパイルされた中間言語プログラムと連携させることができる。この点は、C++言語で作成されコンパイルされたネイティブライブラリについても同様である。
http://ja.wikipedia.org/wiki/Java_Native_Interface http://ja.wikipedia.org/wiki/C%2B%2B/CLI
ところが従来では、Java(登録商標)とC/C++との連携と、C#とC/C++との連携とが、それぞれ独立して行われていたので、ネイティブライブラリの開発及び改良が遅延し、結果として、複数種のスマートフォン用アプリケーションの開発及び改良が遅延する原因となっていた。
本発明の目的は、このような問題点に鑑み、ネイティブライブラリと複数種の中間言語のプログラムとの連携を効率よく行うことが可能なソフトウェア開発キット、これを用いて作成された画像形成装置用拡張アプリケーション及びこのアプリケーションを備えた携帯端末装置を提供することにある。
本発明によるコンピューター実行可能なプログラムの第1態様では、
複数のネイティブ関数又はネイティブメソッドをネイティブサブルーチンとして備えたネイティブライブラリと、
該複数のネイティブサブルーチンのそれぞれについて、第1の中間言語で記述された関数呼出しに応答して、該第1の中間言語で記述された関数呼出しコードの各引数の型を該ネイティブサブルーチンの対応する引数の型に変換して該ネイティブサブルーチンを呼出し、該ネイティブサブルーチンの戻り値の型を該第1の中間言語の対応する型に変換して該第1の中間言語で記述された関数の呼び出し元に返す型変換メソッドを備えた第1ラッパークラスと、
該複数のネイティブサブルーチンのそれぞれについて、第2の中間言語で記述された関数呼出しに応答して、該第2の中間言語で記述された関数呼出しコードの各引数の型を該ネイティブサブルーチンの対応する引数の型に変換して該ネイティブサブルーチンを呼出し、該ネイティブサブルーチンの戻り値の型を該第2の中間言語の対応する型に変換して該第2の中間言語で記述された関数の呼び出し元に返す型変換メソッドを備えた第2ラッパークラスとを有し、該ネイティブライブラリ、該第1ラッパークラス及び該第2ラッパークラスを中間言語用拡張ライブラリとして備えている。
本発明によるコンピューター実行可能なプログラムの第2態様では、第1態様において、
該第1の中間言語はC#の中間言語であり、該第2の中間言語はJava(登録商標)の中間言語である。
本発明によるコンピューター実行可能なプログラムの第3態様では、第1又は2態様において、携帯端末のユーザアプリケーション開発用である。
上記第1態様の構成によれば、複数種の中間言語から、それぞれのラッパークラスを介し、これらに共通のネイティブライブラリを利用することができるので、ネイティブライブラリと複数種の中間言語のプログラムとの連携を効率よく行うことが可能となるという効果を奏する。
また、複数種の言語のそれぞれのプログラマが、該ネイティブライブラリを、ネイティブコードであることを意識せずに該複数種の言語のそれぞれの拡張ライブラリとして用いることができるという効果を奏する。
さらに、ネイティブライブラリを複数種の言語で共通に用いることができるので、上記第3態様の構成によれば、複数種の言語のそれぞれが選択的に用いられる携帯端末のアプリケーションの開発及び改良が遅延するのを防止することができるという効果を奏する。
本発明の他の目的、特徴的な構成及び効果は、以下の説明を特許請求の範囲及び図面の記載と関係づけて読むことにより明らかになる。
本発明の実施例1に係る、複数のクラウドサービスを利用する画像形成システムの概略構成図である。 図1中の画像形成装置の階層構造を示すブロック図である。 図1中のスマートフォンの階層構造を示すブロック図である。 図1中のPCのハードウェア構成を示す概略ブロック図である。 該PCをソフトウェア開発装置として利用する場合の概略機能ブロック図である。 (A)及び(B)はそれぞれ第1及び第2のプラットフォーム用の制御モジュール及びその下位側のラッパーAPIの概略ブロック図である。 図6(A)中のラッパークラスに含まれる型変換メソッドでの処理を示す概略フローチャートである。 (A)は第1のプラットフォーム用の制御モジュール作成手順を示す概略フローチャート、(B)は(A)中のステップS10の説明図である。 (A)は第2のプラットフォーム用の制御モジュール作成手順を示す概略フローチャート、(B)は(A)の処理の説明図である。
図1は、本発明の実施例1に係る、複数のクラウドサービスを利用する画像形成システムの概略構成図である。
このシステムでは、イントラネット10に、画像形成装置11と、ユーザ端末としてのパーソナルコンピュータ(PC)12と、無線LANのアクセスポイント13とが結合され、スマートフォン14がアクセスポイント13を介してイントラネット10に結合される。このイントラネット10がルータ(不図示)を介してインターネット20に結合される。インターネット20には、複数のクラウド21〜23が結合されている。また、インターネット20に基地局24が結合され、スマートフォン14及び25から基地局24を介しイントラネット10に結合される。
複数のクラウド21〜23はそれぞれ、クラウドサービス31〜33を各種クライアント端末に対し提供可能となっている。
ユーザは、PC12、スマートフォン14及び25などに拡張アプリケーションをインストールすることにより、これらからWebサービスとして、画像形成装置11のコピー、プリント及びファクシミリなどの基本的なサービスやクラウドサービス31〜33並びにこれらサービスを組み合わせたものを実行したり、画像形成装置11の設定情報を取得したり、この設定を変更したりすることが可能となる。
図1では、簡単化の為に、複数のPC端末を1つのPC12で代表し、アクセスポイント13に対する複数の携帯端末を1つのスマートフォン14で代表し、基地局24に対する複数の携帯端末を1つのスマートフォン25で代表している。
図2は、画像形成装置11の階層構造を示すブロック図である。
画像形成装置11は、ハードウェアとしてスキャナ40、プリンタ41、FAX42、操作パネル43及びネットワークインターフェイス(NIC)44を備え、プラットフォーム50を介してそれぞれの基本的な入出力制御を行うことが可能となっている。
プラットフォーム50は、前記制御を行ったり、電源を管理したり、TCP/IPなどのプロトコルで通信したりするオペレーティングシステム(OS)と、OSの下層の各種デバイスドライバと、OS上のJava(登録商標)VMやCLR(Common Language Runtime)などの仮想マシン(クラスライブラリ)と、標準ライブラリとを備えている。
制御モジュール51は、拡張クラスライブラリであって、プラットフォーム50のAPI52を介してこれらハードウェアのそれぞれを機能単位で制御可能となっている。基本アプリケーション53は、制御モジュール51のAPI54を介し、ハードウェア40〜44をコピー、プリント及びファクシミリなどのような論理的な機能単位で制御可能となっている。
ハードウェア40〜44に対する設定情報は、操作パネル43の操作に応答して、制御モジュール51により設定情報データベース55に格納され、また、格納された設定情報は、操作パネル43の操作に応答して制御モジュール51により、操作パネル43に表示される。
システム管理部56は、API52又はAPI54を介して、ユーザに対する認証、認可の処理を行ったり、エラー管理を行ったり、省電力管理を行ったりする。
PC12又はスマートフォン14若しくは25から画像形成装置11へのサービス要求は、NIC44及びプラットフォーム50を介してWebサービスプロバイダ57に伝えられ、Webサービスプロバイダ57はその要求に応じて、API58を介し基本アプリケーション53を動作させ、API54を介し設定情報データベース55から設定情報を読み出し又は設定情報データベース55の設定を変更し、それらの結果を返信する。
図3は、スマートフォン14の階層構造を示すブロック図である。
スマートフォン14は、ハードウェアとしてカメラ60、傾きセンサ61、ブルーツース通信部62、操作パネル63及び通信アダプタ64などを備え、通信アダプタ64にアンテナ65が結合され、プラットフォーム70を介してそれぞれの基本的な入出力制御を行うことが可能となっている。
プラットフォーム70は、前記制御を行ったり、電源を管理したり、TCP/IPなどのプロトコルで通信したりするOSと、OSの下層の各種デバイスドライバと、OS上の仮想マシンと、標準ライブラリとを備えている。
制御モジュール71は、拡張クラスライブラリであって、プラットフォーム70のAPI72を介してこれらハードウェアのそれぞれを機能単位で制御可能となっている。基本アプリケーション73は、ブラウザ、動画プレーヤ及びアドレス帳などを含み、制御モジュール71のAPI74を介し、ハードウェア60〜64を論理的な機能単位で制御可能となっている。
ハードウェア60〜64に対する設定情報は、操作パネル63の操作に応答して、制御モジュール71により設定情報データベース75に格納され、また、格納された設定情報は、操作パネル63の操作に応答して制御モジュール71により、操作パネル63に表示される。
システム管理部76は、API72又は74を介して、ユーザに対する認証、認可の処理を行ったり、エラー管理を行ったり、省電力管理を行ったりする。
Webクライアント77は、操作パネル63の操作に応答してAPI72を介しそのURLにHTTPプロトコルで要求を送信し、返信された内容を操作パネル63に表示させる。
拡張アプリケーション(ユーザアプリケーション)78は、基本アプリケーション73のAPI79を介して、単一又は複数の機能の組み合わせを実行させ、API74を介し設定情報データベース75の設定情報を読み取って操作パネル63に表示させ又は設定情報データベース75の設定情報を変更させる。
Webサービスインターフェイス7Aは、Webサービスを内部メソッドのように呼び出すためのサービスプロキシと、送信時に該メソッドの呼び出しをXMLに変換するシリアライザと、受信時にXMLを該メソッドの戻り値に変換するデシリアライザとを備えている。
上記拡張アプリケーション78はまた、Webサービスインターフェイス7A及びWebクライアント77を介し画像形成装置11のWebサービスプロバイダ57又はクラウド21〜23のサービス31〜33に対し要求を行い、その結果を、Webクライアント77及びWebサービスインターフェイス7Aを介して受信し、その内容を操作パネル63に表示させる。
図4は、PC12のハードウェア構成を示す概略ブロック図である。図5は、PC12をソフトウェア開発装置として利用する場合の概略機能ブロック図である。
ホストコンピュータPC12では、CPU91がインターフェイス92を介してメモリ93、補助記憶装置94、会話型入出力装置95及びネットワークインターフェイス96に結合されている。図4では、簡単化の為に、複数種のインターフェイスを1つのブロック92で表している。
メモリインターフェイス92は例えば、BIOSが格納されたフラッシュメモリと、主記憶装置として用いられるDRAMとを備えている。補助記憶装置94には、OS、各種デバイスドライバ、ライブラリ及び仮想マシンがプラットフォーム(PF)として格納され、さらにソフトウェア開発キット(SDK)が格納されている。ネットワークインターフェイス96は、イントラネット10に結合されている。
このソフトウェア開発装置は、図3中の拡張アプリケーション78の開発を支援するもであり、ネイティブライブラリを備えてスマートフォンでの処理を高速化可能にするとともに、複数のプラットフォームのうちの任意の1つを搭載したスマートフォンの拡張アプリケーション78を開発可能にし、しかも、マルチ言語対応にしてプログラミング言語を選択可能にしている。
図5中、構成要素72A、171、173〜176及び179はそれぞれ図3中の構成要素72、71、73〜76及び79に対応している。これら構成要素72A、171、173〜176及び179は、図3中の対応する構成要素のうち、拡張アプリケーション78を開発するのに必要な部分のみを備えていればよい。ラッパーAPI172は、API110をラッパーすることによりAPI72と同じに見せかけるものである。
PC12は、通常のSDKと同様に、テキストエディタ100、デザイナ101、デバッガ102及びビルダ103と、ユーザの操作に応答してこれらのいずれかを呼び出す処理やプロジェクト生成処理等を行うアプリ開発統合管理部104とを備えている。
デザイナ101は、操作パネル63の画面設計のアプリケーション開発を支援するためのものであって、対話的ビジュアル設計に基づいてプログラムを自動生成するものである。
ビルダ103は、複数の言語、例えばC#、C++、C及びJave(登録商標)のそれぞれに対応したコンパイラを備えている。
拡張アプリケーション78のソースコードは、C#又はJava(登録商標)の言語で、C/C++よりも効率よく作成される。このソースコードは、ビルダ103内の対応するコンパイラにより、中間言語に翻訳される。この中間言語は、プラットフォーム内のC#ランタイム又はJavaランタイムの下で、解釈実行され又はJIT(Just In Time)コンパイルされて実行される。C#ランタイム及びJavaランタイムはそれぞれ、CLR(共通言語実行環境)及びJVM(Java仮想マシン)を備えている。
ここで、図5の制御モジュール171は、アプリケーションレベルの通信や画像などを高速処理するクラスライブラリを備えており、これは、図6(A)に示すように、C又はC++のソースコードをコンパイルしたネイティブライブラリ120と、マルチ言語対応にするためC#及びJava(登録商標)のラッパークラスのソースコードをコンパイルしたラッパーAPI121及び122とを備えている。
C#用ラッパーAPI121は、拡張アプリケーション78の中間コードの一部が、ネイティブライブラリ120内のC関数又はC++クラスのメソッド(ネイティブサブルーチン)を、C#のクラスのインスタンスのメソッドとして呼び出せるようにするためのクラスライブラリであり、C#の該メソッドのシグネチャをネイティブライブラリ120内のC関数又はC++クラスのメソッド(ネイティブサブルーチン)のシグネチャに変換する型変換メソッドを含んでいる。
拡張アプリケーション78の中間コードの一部は、この型変換メソッド介して、ネイティブサブルーチンを呼び出す。
図7は、この型変換メソッドでの処理を示す概略フローチャートである。
(S0)C#のメソッド呼び出しコード(シグネチャ)に含まれる引数の型を、ネイティブライブラリ120内の対応するネイティブサブルーチンの引数の型に変換する。
(S1)この引数を用いて該ネイティブサブルーチンを呼び出す。これにより、該ネイティブサブルーチンが実行されて、戻り値が生成される。
(S3)この戻り値の型を、メソッド呼出元の対応する型(上記シグネチャの戻り値の型)に変換し、メソッド呼出元に返す。
ラッパーAPI121は、このような型変換メソッドと、C#の仕様に基づいてメモリ管理を行うためのコンストラクタ及びデストラクタなどの言語仕様変換に必須のものとを含んだ1つ又は複数のクラス(クラスライブラリ)である。
Java用ラッパークラス122もC#用ラッパーAPI121と同様である。
C#用ラッパークラス121及びJavaラッパークラス122は、ラッパークラス生成ツール内の対応する言語のものを用いて生成される。即ち、ラッパークラス生成ツールは、C++/CLRを用いてC#ラッパークラス120を生成するツールと、JNIに基づいてJavaラッパークラス1211を生成するツールとを備えている。
ネイティブライブラリ120は、特定のプラットフォーム70(PL1)のOS又は/及びライブラリ、例えば.NETフレームワークの標準ライブラリを用いて作成されている。ラッパーAPI172は、ネイティブライブラリ120から見てプラットフォーム70をPL1と見なせるようにするためのものである。
PC12はまた、図6(B)に示すような制御モジュール171Aも備えている。
制御モジュール171Aは、ネイティブライブラリ120と同一機能のネイティブライブラリ120Aと、C#用ラッパーAPI121及びJava(登録商標)用ラッパーAPI122とを備え、これらラッパーAPI121及びAPI122は制御モジュール171のものと共用である。
ネイティブライブラリ120Aは、他のプラットフォーム70(PL2)のOS又は/及びライブラリ、例えばLinax(登録商標)のクラスライブラリを用いて作成されている。ラッパーAPI172Aは、ネイティブライブラリ120Aから見てプラットフォーム70をPL2と見なせるようにするためのものである。
上記共用を可能にするため、ネイティブライブラリ120A内の各メソッドのシグネチャはネイティブライブラリ120のそれと同一になっている。すなわち、ネイティブライブラリ120と120AのC又はC++ソースコードでの相違部分は、プラットフォームPL1とPL2のいずれのAPIを使用しているか及びその周辺部分であり、他は互いに同一である。
図8(A)は、制御モジュール171の作成手順を示す概略フローチャートである。
(S10)プラットフォームPL1用のネイティブライブラリ120を作成する。このネイティブライブラリ120は、図8(B)に示すようにラッパーAPI172(クラスライブラリ)内の例えばAPI1〜API3を用いている。
(S11)各言語用のラッパークラスライブラリ、すなわちラッパーAPI121及びラッパーAPI122を作成する。
図9(A)は、制御モジュール171Aの作成手順を示す概略フローチャートである。
(S20)プラットフォームPL2用のネイティブライブラリ120Aを作成する。このネイティブライブラリ120Aは、図9(B)に示すように、ラッパーAPI172A内の例えばAPI1A〜API3Aを用いている。
ラッパーAPI121及びAPI122は既に作成され、制御モジュール171のそれらと共用であるので、さらに作成する必要がない。
図5に戻って、PC12はさらに、スマートフォン14のハードウェアに対応したシミュレータ105を備えている。入力装置950及び表示装置951は図4中の会話型入出力装置95を構成している。図5中、拡張アプリケーション78及びWebサービスインターフェイス7A中のサービスプロキシ以外は、開発環境として予め備えられている。
本実施例1によれば、複数種の言語のいずれかの拡張アプリケーション78から、対応するラッパーAPI121又は122を介し、これらに共通のネイティブライブラリ120を利用することができるので、ネイティブライブラリ120と複数種の中間言語のプログラムとの連携を効率よく行うことが可能となるという効果を奏する。
また、複数種の言語のそれぞれのプログラマが、ネイティブライブラリ120を、ネイティブコードであることを意識せずに該複数種言語のそれぞれの中間言語用拡張ライブラリとして用いることができるという効果を奏する。
さらに、ネイティブライブラリ120を複数種の言語で共通に用いることができるので、複数種の言語のそれぞれが選択的に用いられるスマートフォンアプリケーションの開発及び改良が遅延するのを防止することができるという効果を奏する。
以上において、本発明の好適な実施例を説明したが、本発明には他にも種々の変形例が含まれ、上記実施例で述べた各構成要素の機能を実現する他の構成を用いたもの、当業者であればこれらの構成又は機能から想到するであろう他の構成も、本発明に含まれる。
例えば、ラッパーAPI120、122は、API174の一部であってもよい。換言すれば、ラッパーAPI120、122をAPI174の一部として用いる構成であってもよい。
また、中間言語にコンパイルされるオブジェクト指向言語は、上記以外のものであってもよい。ネイティブライブラリはアセンブリ言語を一部又は全部用いて作成したものであってもよい。
10 イントラネット
11 画像形成装置
12 PC
13 アクセスポイント
14、25 スマートフォン
20 インターネット
21〜23 クラウド
24 基地局
31〜33 クラウドサービス
40 スキャナ
41 プリンタ
42 FAX
43 操作パネル
44 NIC
50、70、110、PL1、PL2 プラットフォーム
51、71、171 制御モジュール
52、54、58、72、74、79、174、179 API
53、73、173 基本アプリケーション
55、75、175 設定情報データベース
56、76、176 システム管理部
57 Webサービスプロバイダ
60 カメラ
61 傾きセンサ
62 ブルーツース通信部
63 操作パネル
64 通信アダプタ
65 アンテナ
72A、172、172A、121、122 ラッパーAPI
77 Webクライアント
78、78A 拡張アプリケーション
7A、7B Webサービスインターフェイス
91 CPU
92 インターフェイス
93 メモリ
94 補助記憶装置
95 会話型入出力装置
96 ネットワークインターフェイス
100 テキストエディタ
101 デザイナ
102 デバッガ
103 ビルダ
104 アプリ開発統合管理部
105 スマートフォンハードウェアシミュレータ
120、120A ネイティブライブラリ

Claims (3)

  1. 複数のネイティブ関数又はネイティブメソッドをネイティブサブルーチンとして備えたネイティブライブラリと、
    該複数のネイティブサブルーチンのそれぞれについて、第1の中間言語で記述された関数呼出しに応答して、該第1の中間言語で記述された関数呼出しコードの各引数の型を該ネイティブサブルーチンの対応する引数の型に変換して該ネイティブサブルーチンを呼出し、該ネイティブサブルーチンの戻り値の型を該第1の中間言語の対応する型に変換して該第1の中間言語で記述された関数の呼び出し元に返す型変換メソッドを備えた第1ラッパークラスと、
    該複数のネイティブサブルーチンのそれぞれについて、第2の中間言語で記述された関数呼出しに応答して、該第2の中間言語で記述された関数呼出しコードの各引数の型を該ネイティブサブルーチンの対応する引数の型に変換して該ネイティブサブルーチンを呼出し、該ネイティブサブルーチンの戻り値の型を該第2の中間言語の対応する型に変換して該第2の中間言語で記述された関数の呼び出し元に返す型変換メソッドを備えた第2ラッパークラスと、
    を有し、該ネイティブライブラリ、該第1ラッパークラス及び該第2ラッパークラスを中間言語用拡張ライブラリとして備えていることを特徴とするコンピューター実行可能なプログラム
  2. 該第1の中間言語はC#の中間言語であり、該第2の中間言語はJava(登録商標)の中間言語であることを特徴とする請求項1に記載のコンピューター実行可能なプログラム
  3. 携帯端末のユーザアプリケーション開発用であることを特徴とする請求項1又は2に記載のコンピューター実行可能なプログラム
JP2011242937A 2011-11-05 2011-11-05 プログラム Expired - Fee Related JP5420622B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2011242937A JP5420622B2 (ja) 2011-11-05 2011-11-05 プログラム
CN2012104073178A CN103092599A (zh) 2011-11-05 2012-10-17 软件开发套件
EP12191283.6A EP2590071A1 (en) 2011-11-05 2012-11-05 Storage device including software development kit that supports multiple types of platforms and multiple programming languages
US13/669,052 US20130185699A1 (en) 2011-11-05 2012-11-05 Storage Device Including Software Development Kit that Supports Multiple Types of Platforms and Multiple Programming Languages

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011242937A JP5420622B2 (ja) 2011-11-05 2011-11-05 プログラム

Publications (2)

Publication Number Publication Date
JP2013097745A JP2013097745A (ja) 2013-05-20
JP5420622B2 true JP5420622B2 (ja) 2014-02-19

Family

ID=48619581

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011242937A Expired - Fee Related JP5420622B2 (ja) 2011-11-05 2011-11-05 プログラム

Country Status (1)

Country Link
JP (1) JP5420622B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6128971B2 (ja) * 2013-06-04 2017-05-17 株式会社ホロンクリエイト シミュレーション方法及びシミュレーション方法のプログラム。
JP5866316B2 (ja) * 2013-06-28 2016-02-17 京セラドキュメントソリューションズ株式会社 アプリケーション実行時間短縮方法
US9760415B2 (en) * 2014-05-16 2017-09-12 Microsoft Technology Licensing, Llc Code service for language-independent dispatch
JP6248814B2 (ja) * 2014-05-30 2017-12-20 京セラドキュメントソリューションズ株式会社 画像形成装置、画像形成方法、及び制御プログラム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5455951A (en) * 1993-07-19 1995-10-03 Taligent, Inc. Method and apparatus for running an object-oriented program on a host computer with a procedural operating system
JP4334214B2 (ja) * 2002-01-08 2009-09-30 株式会社リコー 画像形成装置、アプリケーションプログラム及び記録媒体
JP2004288076A (ja) * 2003-03-25 2004-10-14 Hitachi Information Systems Ltd ネイティブライブラリへのアクセス方法
US7770158B2 (en) * 2004-10-14 2010-08-03 Bea Systems, Inc. Source code translator

Also Published As

Publication number Publication date
JP2013097745A (ja) 2013-05-20

Similar Documents

Publication Publication Date Title
EP2590071A1 (en) Storage device including software development kit that supports multiple types of platforms and multiple programming languages
CN110134378B (zh) 应用程序创建方法及装置、计算机设备及存储介质
US9026588B2 (en) Storage device including software development kit that includes web service interface and terminal apparatus including the software development kit
US8694988B2 (en) Runtime extensions
TW459202B (en) Transparent loading of resources from read-only memory for an application program
CN101040259A (zh) 运行期动态链接
CN108121594B (zh) 一种进程管理方法及装置
US20120102483A1 (en) Handling calls to native code in a managed code environment
US8694956B2 (en) PowerShell cmdlets code generating tool for communicating to the web services
US8539506B2 (en) Dynamic injection of code into running process
CN103064663A (zh) 浏览器插件的生成、发布、加载和更新方法以及***
JP2011107752A (ja) 情報処理装置、通信システムおよびプログラム
JP5420622B2 (ja) プログラム
JP7048663B2 (ja) コード実行方法、装置、レンダリングデバイス、記憶媒体、及びプログラム
CN113407255A (zh) 组件调用方法、装置及计算机可读存储介质
JP5420623B2 (ja) プログラム
KR101907660B1 (ko) 웹 기반의 운영체제를 탑재한 단말 장치 및 이를 이용한 서비스 제공 방법
KR20110130611A (ko) 이기종 운영체제 계층 모듈에서 동작하는 웹기반어플리케이션의 연동이 가능한 모바일 단말기용 웹 플랫폼 유닛
CN111381816A (zh) 应用程序的获取方法、装置、设备及存储介质
CN111158777A (zh) 组件调用方法、装置及计算机可读存储介质
CN114860401A (zh) 异构云桌面调度***、方法、服务***、装置及介质
CN115997194A (zh) 支持码流折叠的混合二进制
CN108804236B (zh) 一种aidl文件的共享方法及***
CN117055880B (zh) 一种基于容器化部署的文档转码方法、装置及存储介质
TWI581185B (zh) 應用程式安裝方法及系統

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130321

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20130426

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130806

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131004

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20131022

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131120

R150 Certificate of patent or registration of utility model

Ref document number: 5420622

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees