- ベストアンサー
ソフトウェアとオープンソース
ソフトウェアについて教えて下さい。ソフトウェアでオープンソースといって公開しているものとそうでないものがありますが、公開していないソフトウェアというものは、開発者以外の人が見てもその仕組みはわからないものなのでしょうか? 例えば時計は分解してみれば、こういう仕組みで動いていると専門家が見ればわかると思うのですが、ソフトウェアは単純に分解すればわかるというものではないのでしょうか?
- みんなの回答 (6)
- 専門家の回答
質問者が選んだベストアンサー
GeckoやWebKitに関しては技術が公開されているため自分でその技術を用いてソフトウェアを作成できます。 Geckoの事例で行けばSyleraみたいにWindowsにGeckoを最適化したブラウザとか、Firefoxに最適化処理を施した独自ビルドの例があります。 WebKitの場合Safari以外にも同じ技術を用いたブラウザが複数あります。ShiiraやOmniweb…それから一応Swiftなんてものも。 システムの開発元団体以外の人間がそのシステムを改造した製品を作れるのはこのためです。 …が、通常ありえない動作云々はオープンソースうんうんとはまったく別次元の話。改造などと言う問題ではなく単なる不具合でしょう。 ブラウザのカテゴリで新規に質問してみることをお勧めします。環境情報とかちゃんと詳しく書いた上でね。
その他の回答 (5)
>通常ありえないような動作 ただのバグかもしれない。 ウィルスやスパイウェアかもしれない。 この質問だけからは全く判別できない。
お礼
そうですね。どうもありがとうございました。
>SafariはApple、Operaはオペラ,NetscapeはAOL オペラは知らないけどsafariとnetscapeはある意味可能 safariは「WebKit」なるものを用いて作られている。 http://homepage.mac.com/mkino2/safari/myfirst/whats.html よってこのSDKを用いる事でsafariが利用しているブラウザのエンジンを用いた自分だけのアプリを作成する事も不可能ではない。 同じくnetscapeは「Gecko」なる描画エンジンを用いて作られている。 http://developer.mozilla.org/ja/docs/Download_Mozilla_Source_Code これは「mozilla」と書いた方が早いかもしれない。 現在では「Firefox」が代表的でやはり同じようにこれを用いれば(以下略)
補足
いろいろありがとうございました。 誤作動ということもあるかもしれませんが、通常ありえないような動作をブラウザがしました。 改良が出来る人が誰なのかという事も関心がありますが、その前に私のPCにあるブラウザを触れる人がいたという事の方が問題ですね。 一人暮らしなので、ネット上からの侵入ということになるのでしょうか、、、。
- MAN_MA_RUI
- ベストアンサー率41% (426/1024)
> 一般的なソフトで例えば、ブラウザのSafari,Opera,Netscape等いろいろありますが、一般の人(専門知識を持った方)が例えばこれらのソフトの一部を改良することができるものなのかどうかということです。 む、Webブラウザの話?こういうものの本体に直接手を加えるのはアウトです。 SafariはApple、OperaはOpera Software、NetscapeはAOLが権利を保有していますから本体を勝手に改造したら違法行為です。 また、技術的に不可能ではないといっても製品として配布されているものをばらすのはほぼ無理です。物凄くハードルが高い、ってこと。 ただし、直接手を加えないと言う形でのいろいろな機能追加やインターフェース言語の翻訳程度ならばあまり問題はありません。 開発者の人間は機能を追加するものを機能追加プログラムとして配布したり、インターフェース言語を変更したものを翻訳版として配布したり出来ます。
お礼
どうもありがとうございました。
補足
ありがとうございます。 >、Webブラウザの話?こういうものの本体に直接手を加えるのはアウトです。 してはいけないことはよくわかっています。ただ、通常のWebを見る本来の役割以外の動きをする場合、そのように改良出来る人は、開発者でなければ出来ないのか、あるいは開発者以外の高度な知識をもった人ならできるのかどうかという事です。 ちょっと妙な動きをするブラウザがありまして、ウィルスなのかな??と思ったのですがPC内をスキャンしても異常なしでした。 お話をお伺いしたところSafariはApple、Operaはオペラ,NetscapeはAOLの関係者でないと改良出来ないということですね。
- MAN_MA_RUI
- ベストアンサー率41% (426/1024)
通常のソフトウェアは単純にばらしても構造を解析できない場合が多いです。 SAYKA.さんの仰ることと重なるかもしれないけど…技術的に絶対無理と言うわけでもないのですが、容易ではないですし、ばらしちゃいけないものをばらして何かを二次的に生成するのはアウトですね。 オープンソースと言うのはソースコードが公開されていて誰でも二次的な改良品やその他を再配布できる代物…厳密な表現ではないですが。
お礼
どうもありがとうございました。
補足
ありがとうございます。 >ばらしちゃいけないものをばらして何かを二次的に生成するのはアウトですね。 そうですね。別に悪い事をしようと思って聞いたわけではなくて、質問の趣旨は、ソフトウェア(オープンソースではない)はそれを開発した人にしかその仕組みがわからないのであれば、既存のソフトを改良することはもともとの開発者しかできないものなのかということが知りたかったのです。 一般的なソフトで例えば、ブラウザのSafari,Opera,Netscape等いろいろありますが、一般の人(専門知識を持った方)が例えばこれらのソフトの一部を改良することができるものなのかどうかということです。
どのソフトも最終的には「機械語」と呼ばれる電気信号の集まりに変換される。 その電気信号の羅列に意味付けして動作するようにしたのは人間なので仕様が判れば誰でも解析できる。 しかしあまりにも煩雑すぎるのでもう少し判りやすい「アセンブラ」へ変換する。 このような手法は逆アセンブルと言い、禁止されているソフトも存在する。 オープンソースは機械語へ変換する前の より人に判りやすい言語で書かれたものであるというだけの話でオープンされているかいないかは理解度に関係ない。 オープンソースは誰でも見て修正できるという事が特徴であるにすぎない。
お礼
どうもありがとうございました。
お礼
詳しい説明どうもありがとうございました。