Runtime API と driver API
Runtime API と driver API
初心者で、変な質問だと思われるかもしれませんが。
Runtime API と driver API はそれぞれどんな役割でしょうか。
------そもそも両者が違うものとして存在するでしょうか。
どうぞ宜しくお願いします
Runtime API と driver API はそれぞれどんな役割でしょうか。
------そもそも両者が違うものとして存在するでしょうか。
どうぞ宜しくお願いします
Re: Runtime API と driver API
私もこの辺基本的な事を知りたいだけですね。
Windows OSの世界でも、LINUXの世界でも、あるいはCUDAのGPU世界でも、
みな「Runtime API 」 と 「driver API 」という表現があります。
異なるOSの間で「Runtime API 」 と 「driver API 」の概念は一致するかっどうか、
あるいは「Runtime API 」 と 「driver API 」はそれぞれに本当に厳密的な定義、内包または外延があるのでしょうか。
それから、両者をきれいに分けられるのでしょうか。
例えば、経験のあるプログラマなら、
某API関数を見たら、それは「Runtime API 」 であるか、あるいは「driver API 」であるかどうか大体区別できるのでしょうか。
Windows OSの世界でも、LINUXの世界でも、あるいはCUDAのGPU世界でも、
みな「Runtime API 」 と 「driver API 」という表現があります。
異なるOSの間で「Runtime API 」 と 「driver API 」の概念は一致するかっどうか、
あるいは「Runtime API 」 と 「driver API 」はそれぞれに本当に厳密的な定義、内包または外延があるのでしょうか。
それから、両者をきれいに分けられるのでしょうか。
例えば、経験のあるプログラマなら、
某API関数を見たら、それは「Runtime API 」 であるか、あるいは「driver API 」であるかどうか大体区別できるのでしょうか。
Re: Runtime API と driver API
普段 Windows のデスクトップアプリ、それもネイティブアプリしか作らないので、
あまり知識があるとは言えないのですが、一般的にはWindows Runtime API と
言ったらストアアプリ用のAPIのことと思いますが、そのことでしょうか?
とするとWindows環境特有の用語で、Linuxには関係ないような気がしますが
全く別の話でしょうか?
Driver APIもあまり聞き慣れない用語で、何となくイメージはできますが
よく判りません。
どのような文脈で使用されていたのか、説明して頂けませんか?
専門用語は使う人、場所、シチュエーションによって全く違ったりします。
バックグラウンドを説明しないと全く伝わらないことも多々あります。
あまり知識があるとは言えないのですが、一般的にはWindows Runtime API と
言ったらストアアプリ用のAPIのことと思いますが、そのことでしょうか?
とするとWindows環境特有の用語で、Linuxには関係ないような気がしますが
全く別の話でしょうか?
Driver APIもあまり聞き慣れない用語で、何となくイメージはできますが
よく判りません。
どのような文脈で使用されていたのか、説明して頂けませんか?
専門用語は使う人、場所、シチュエーションによって全く違ったりします。
バックグラウンドを説明しないと全く伝わらないことも多々あります。
Re: Runtime API と driver API
あ、わかった。君たちAndroidの話をしているね。
Android OSはコードがJavaの部分とCの部分に分かれていて、
JavaのほうをRuntime API, CのほうをDriver APIっていうんじゃない。
なぜかって、Android OSではドライバはカーネルと一緒にコンパイルするから。
Android OSはコードがJavaの部分とCの部分に分かれていて、
JavaのほうをRuntime API, CのほうをDriver APIっていうんじゃない。
なぜかって、Android OSではドライバはカーネルと一緒にコンパイルするから。
Re: Runtime API と driver API
というのもあるし、初心者の哲学につきあえるほど技術は単純じゃないよ。
Windowsについてのうんちくを知りたければ、
G・パスカル・ザカリー「戦うプログラマー ビルゲイツの野望を狙った男達」とかおすすめ。
UNIXは、
Mike Gancarz「UNIXという考え方ーその設計思想と哲学」がいいね。
あと、インターネットでも読めるけどJoel on Softwareとか非常にためになる。
Windowsについてのうんちくを知りたければ、
G・パスカル・ザカリー「戦うプログラマー ビルゲイツの野望を狙った男達」とかおすすめ。
UNIXは、
Mike Gancarz「UNIXという考え方ーその設計思想と哲学」がいいね。
あと、インターネットでも読めるけどJoel on Softwareとか非常にためになる。
Re: Runtime API と driver API
そうそう、名前についてのうんちくを1つ。
数学的には直線は、限りなく伸びているものであり、端々が途切れているのは線分という。
だけど、Windowsの描画ライブラリでは、端々が途切れているものを「直線」と呼んでいる。
それはなぜか? Microsoftの技術者が「直線」であると「決めた」からだ。
つまり、用語というものは、人間という多様で不完全な生き物が、物事を説明するたびに
暗黙のうちに決定されるものなのだ。だから、WindowsのランタイムとLinuxのランタイムは
同じ意味ですか?と聞かれても、知らねーよ、なのです。
このうんちくは今日の朝思いつきました。
数学的には直線は、限りなく伸びているものであり、端々が途切れているのは線分という。
だけど、Windowsの描画ライブラリでは、端々が途切れているものを「直線」と呼んでいる。
それはなぜか? Microsoftの技術者が「直線」であると「決めた」からだ。
つまり、用語というものは、人間という多様で不完全な生き物が、物事を説明するたびに
暗黙のうちに決定されるものなのだ。だから、WindowsのランタイムとLinuxのランタイムは
同じ意味ですか?と聞かれても、知らねーよ、なのです。
このうんちくは今日の朝思いつきました。
Re: Runtime API と driver API
初心者が疑問を持つのは当然ですし、疑問を気にせずに突き進んでしまったら最悪の事態だと思います。
なので、
なぜ、そのような疑問を持っているのか、というところからちゃんと聞いてあげるべきでしょう。
そもそもここは交流する場所であり、なんでも質問掲示板です。
なので、
などと突き放すようなことには賛同できかねます。初心者の哲学につきあえるほど技術は単純じゃないよ。
なぜ、そのような疑問を持っているのか、というところからちゃんと聞いてあげるべきでしょう。
そもそもここは交流する場所であり、なんでも質問掲示板です。
Re: Runtime API と driver API
すみません。hideさんのいうとおりです。
確かに、2人の方が類似した疑問をもつということは、彼らが正しい情報を持っているかは別として、
何かあるということなのでしょう。
せめて発言の元になるソースがわかればいいのですが・・・
確かに、2人の方が類似した疑問をもつということは、彼らが正しい情報を持っているかは別として、
何かあるということなのでしょう。
せめて発言の元になるソースがわかればいいのですが・・・
Re: Runtime API と driver API
質問者からの回答がないようなので,とりあえず一般論的に。
まず,APIとはApplication Programming Intefaceの略です。
大雑把に書くならば,何らかの(既存の)ソフトウェアやハードウェアに対して,主にほかのソフトウェアからアクセスして操作したり,情報を得たりするための手段を定めたものです。
大抵はソフトウェアライブラリだったり,HTTP(HTTPS)のURIとして表されたりします。
その上で,Runtime APIやdriver APIと書かれても,それは作成者がそのAPIに対してそのように名付けた,という違いしかありません。
driver APIと言われれば恐らくソフトウェアのドライバーを作成するためのAPIであると予想はできますが,それが実際にそのようなAPIであるかは内容を見なければわかりません。
先に短く,
元質問者の方の質問ではありませんが,
まず,APIとはApplication Programming Intefaceの略です。
大雑把に書くならば,何らかの(既存の)ソフトウェアやハードウェアに対して,主にほかのソフトウェアからアクセスして操作したり,情報を得たりするための手段を定めたものです。
大抵はソフトウェアライブラリだったり,HTTP(HTTPS)のURIとして表されたりします。
その上で,Runtime APIやdriver APIと書かれても,それは作成者がそのAPIに対してそのように名付けた,という違いしかありません。
driver APIと言われれば恐らくソフトウェアのドライバーを作成するためのAPIであると予想はできますが,それが実際にそのようなAPIであるかは内容を見なければわかりません。
オフトピック
もしかしたら通信先にある,工具のドライバーを回したりするような,非常にニッチなAPIなのかもしれませんし,「ドライバー」氏が作ったAPI,という意味なのかもしれません。
とだけ書いてしまいましたが,上記のような理由から,「何のRuntime APIの話か」「何のdriver APIの話か」を書かないと,役割が何かはわからないのです。YuO さんが書きました:何についての話でしょうか。
元質問者の方の質問ではありませんが,
は当然一致しませんし,むー さんが書きました:異なるOSの間で「Runtime API 」 と 「driver API 」の概念は一致するかっどうか、
は「そう名付けた」以外の定義は存在しませんし,むー さんが書きました:「Runtime API 」 と 「driver API 」はそれぞれに本当に厳密的な定義、内包または外延があるのでしょうか。
は「Runtime API」に含まれるか,「driver API」に含まれるか,という点のみに注目することできれいに分けられますし,むー さんが書きました:それから、両者をきれいに分けられるのでしょうか。
は不可能です。むー さんが書きました:例えば、経験のあるプログラマなら、
某API関数を見たら、それは「Runtime API 」 であるか、あるいは「driver API 」であるかどうか大体区別できるのでしょうか。