• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Androidファームウェアとソースコードの違い)

Androidファームウェアとソースコードの違い

このQ&Aのポイント
  • Androidファームウェアとソースコードの違いについて知りたいです。
  • Androidのファームウェアはアップデートに使用され、ソースコードは開発に使用されます。
  • Asusのサイトにはファームウェアとソースコードが記載されています。ソースコードは開発者向けです。

質問者が選んだベストアンサー

  • ベストアンサー
  • t_ohta
  • ベストアンサー率38% (5238/13705)
回答No.4

>【ソースコードについて】 No.3の方が書かれている通り、Androidはオープンソースのため規定に従って公開義務があるソースコードを公開しているのです。 あなた自身にソースコードからOSを作り上げるスキルがあれば、好きなように改変して自分のスマホに入れて使う事が可能です。 >【ファームウェアについて】 スマホの場合、PCで言うBIOSとOSが一式となったモノがファームウェアとして公開されています。 どこまでをファームウェアと呼ぶかはケースバイケースなので、スマホの場合はOSも含めてファームウェアなのです。 ルーターなんかでも、BIOS・OS・設定機能のプログラムやルーティング処理のプログラムなど全部まとめてファームウェアと呼んでます。 Windowsに例えるなら、PCのBIOSと一緒にアップデート版の新OSをDVDからインストールするような感じです。

pc_problem
質問者

お礼

回答ありがとうございます。身近に使っているAndroidについてあまり理解していなかったので、気になってご質問させて頂きました。また一つAndroidのことが理解できました。 あとはそのソースコードをどうやって自分のAndroid端末に入れていくのかを自分なりに調べてみたいと思います。ありがとうございました。

その他の回答 (3)

  • mk48a
  • ベストアンサー率56% (1133/2007)
回答No.3

AndroidOSはオープンソースなライセンスなので、改変したものを配布する場合、ソースコードの公開を求められればソースコードを公開する義務があります。 http://ja.wikipedia.org/wiki/Android#.E3.83.A9.E3.82.A4.E3.82.BB.E3.83.B3.E3.82.B9 ASUSは自社のデバイス用にカスタマイズしているので、公開する義務があるのですが、いちいち個別に対応していたら面倒なので、誰でもダウンロードできるように公開しているのでしょう。 >ファームウェアはアップデートするために使うということはわかったのですがソースコードが何のために使うのかいまいちわからなかったのでご質問させて頂きました。 上記の理由と、自分でカスタマイズできるユーザー用でしょう。 普通の人には関係ないです。

pc_problem
質問者

お礼

【ファームウェアについて】 Shintaro-2さんがおっしゃるように「ファームウェアとは、ハードの基本的な動作(Andoroid OSが動く以前の状態)を制御するためのプログラム」だとは思うのですがAsusのスマホの場合このファームウェアをダウンロードしてOSを4.2から4.4に上げます。これをwindowsに当てはめるとハードウェアをアップデートするとwindows8からwindows8.1に上げられるということになってしまいます。 今の自分の理解だとこの「ファームウェア」というのはスマホ内のハードウェアを4.4に対応するようにアップデートし、かつOSのバージョンをアップするプログラムも含まれているものという理解で良いでしょうか? 【ソースコードについて】 android OSがクラッシュした時、このソースコードを使って初期化することも可能なのでしょうか?その時はAndroidSDKなどを使わなければならないのでしょうか?

pc_problem
質問者

補足

お礼の言葉を書くのをわすれてました〉〈 回答ありがとうございます。ちょっとずつですが理解できてきました。

  • t_ohta
  • ベストアンサー率38% (5238/13705)
回答No.2

ソフトウェアを開発するとき、CPUが理解できるマシン語でプログラムを書くのは非常に手間がかかり難しい作業になってしまいます。 そのため通常は人間が理解しやすいプログラミング言語を使ってプログラムを書き、コンパイルと言う作業を行ってCPUが理解できるマシン語に変換します。 その変換前のプログラムを一般的にソースコードと読んでいます。 ファームウェアはいろいろな種類があるソフトウェアのうち、電子機器の動作の元となるソフトウェアをファームウェアと呼んでいます。 スマホだけではなく、ルーターや無線LAN親機などにインストールするソフトウェアもファームウェアと呼びます。

pc_problem
質問者

お礼

【ソースコードについて】 ASUS のサイトにこのスマホのソースコードが公開されているのですがこれは何か自分で改変して自分が使っているスマホに入れて使うということも可能なのでしょうか?例えばOSがクラッシュした時にインストールできたりとか。どのように、どんなシチュエーションで使えるもの簡単にでもよいので教えていただけるとうれしいです。 【ファームウェアについて】 ファームウェアとはハードウェアに対してのものだとは思うのですが、AsusのこのスマホだとファームウェアをSDカードに入れてOSを4.2から4.4に上げます。Windowsならこんなことないですよね?ファームを上げたからと言ってwindows8からwindows8.1になるようなことは。これがどういうことかいまいち理解できません。

  • shintaro-2
  • ベストアンサー率36% (2266/6245)
回答No.1

>ファームウェアはアップデートするために使うということはわかったのですがソースコードが何のために使うのかいまいちわからなかったのでご質問させて頂きました。 ファームウェアとは、ハードの基本的な動作(Andoroid OSが動く以前の状態)を制御するためのプログラム ソースコードとは、何らかのプログラムの中身(マシン語とかC言語とかで記述された、プログラムの各行のこと) プログラムを見る時の観点が違います。

pc_problem
質問者

お礼

ファームウェアとはハードウェアに対してのものだとは思うのですが、AsusのこのスマホだとファームウェアをSDカードに入れてOSを4.2から4.4に上げます。Windowsならこんなことないですよね?ファームを上げたからと言ってwindows8からwindows8.1になるようなことは。これがどういうことかいまいち理解できません。 あとソースコードはAsusのサイト上で公開されています。このソースコードを使ってどのように、どんなことができるのか知りたいなと思って質問させて頂きました。例えばandroidOSの初期化など。

関連するQ&A