• ベストアンサー

パソコンについて。

OSとライブラリとアプリケーションについて詳しく懇切丁寧に教えていただけると助かります。すみませんが。この3つのことが載っている本があれば教えていただけると助かります。すみませんが。

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

  • ベストアンサー
回答No.3

”プログラムはなぜ動くのか 第2版” という書籍が、CPUとメモリーとプログラムの動作の仕組みや Windowsでの実行ファイルとDDLとの関係など 親切に解説してあるかと存じます。

その他の回答 (2)

  • bardfish
  • ベストアンサー率28% (5029/17765)
回答No.2

ライブラリについて。 本来の意味は図書館です。 パソコン関係に限定した意味で言えば ---- Wikipediaより引用 汎用性の高い複数のプログラムを再利用可能な形でひとまとまりにしたものである。ライブラリと呼ぶときは、それ単体ではプログラムとして動作させることはできない、つまり実行ファイルではない場合がある。ライブラリは他のプログラムに何らかの機能を提供するコードの集まりと言える。ソースコードの場合と、オブジェクトコード、あるいは専用の形式を用いる場合とがある。たとえば、UNIXのライブラリはオブジェクトコードをarと呼ばれるアーカイブツール(アーカイバ)でひとまとめにして利用する。図書館(英: library)と同様にプログラム(算譜)の書庫であるので、索引方法が重要である。 また、ソフトウェア以外の再利用可能なものの集合について使われることもある(音声データなど)。 以上、引用終わり------ と言うことになるのですが、さらに専門用語が出てきて知らない言葉が増えてしまうと思います。 こういうのは自分でプログラムを作るようになると自然と理解してしまう者なんですが、プログラムで言えば「汎用もしくは専用サブルーチンの集まりの単位」と言う者であり、サブルーチンというのは作成しているシステムやプログラムの中で何度も同じ手順が出てきた場合に共通化することで手間が省け、修正する箇所が一カ所でいいから修正漏れなどの不具合を防ぎやすくなると言うメリットがあります。プログラムの書き方(コードとかソースコードと言います)も簡略化でき打ち込む文字数も減ります(笑) ライブラリというのはそれだけではなく、引用元の最後にも書かれていますが音声データや画像も集合体として扱う用途であればそれもライブラリと呼びます。 その上で英単語の訳語について思い出してみてください。まるで図書館ですよね。だからいつしかプログラマたちが自然とそういう呼び方をして今に至るのではないでしょうか? コンピューターの専門用語というのはそれなりに由来があり、その大本は日常使いの英単語に起源を見つけることが出来ると、私なんかは思っています。 OSも然り。Operating Systemという二つの単語の頭文字をとった呼び方です。これは「オペレーション(機械類の操作・運転)」と「システム(物事や一連の働きを秩序立てた全体的なまとまり)」から来ています。 初期のパソコンは電源を入れたら真っ黒な画面に何かしらの文字だけが表示され、一番最後に四角い文字が点滅しているだけで、いくら待ってもそのまま。パソコンに何かさせるには自分でプログラムを打ち込まなくてはいけませんでした。OSと呼ばれる者が搭載されるのはもう少し後で、それが一般化されるのはずっと後。 初期のOSはCP/Mと呼ばれるもので起動しても画面は黒くて何かを入力するまで変化はありません。MS-DOS(PC-DOS)も同じ。 ※いずれも有名どころで、知らないOSは他にももっとあったのかもしれません。 で、今のWindowsの系譜の元祖にもなるWindows1.0はMS-DOSというOS脳絵で動くアプリケーションの一つでしかなくグラフィックは使えませんでした。それもAppleのLisaと言うコンピューターが採用したマウスで操作する今で言うWindowsの操作に似た操作が可能な初のGUI OSをまねしたものと言われていたはずです。それもグラフィックスではなくキャラクター(文字)だけでウィンドウを再現した今時のパソコンから見ればものすごくチープなもの。 で、MS-DOSというのはディスク操作の複雑な手順を利用者に意識させずにまとめたソフトウェアでOSと呼ぶに値するもの。DOSがないとFDDやHDDに対して数十から数百に上る命令をコントローラーに与えてデータを引っ張ってきたり与えたりしなくてはいけませんでした。 それら数百の命令を一つにまとめてコマンド(命令)として組み込んだのがDOSであり、IBMが開発していたPC-DOSをビルゲイツがもらって?独自に改良したものを公開しMicrosoftと言う会社を立ち上げてパソコン用OSとして販売。PC-DOSはいわばIBM PC専用のオペレーションソフトだったものをOperating SystemとしてIBM互換機でも使えるようにしたためパソコン用OSとしての市場を独占。今に至っている・・・と言う認識でいます。 というような感じで、ご希望のことを一冊にまとめて稲書籍は知りません。 コンピューターの歴史を解説している本とかサイトを読み進めていけばある程度は知ることが出来るし、さらに言えばぷろぐらみんぐのかいせつしょもいくつかよめば理解はさらに深まると思います。 私もそういう書籍を年単位で購入し、その筋の雑誌も年単位で毎月購読していたりしていました。雑誌で言えばきっかけは「ラジオの製作」、その後は「インターフェイス」や「I/O」という雑誌を主軸に、書店に行って興味を引くような雑誌をつまみ食い的に購入して読んだりしていました。パソコンゲーム情報誌とか(笑) 基本的にこういうのは習うより慣れると言うスタンスです。書籍や講習会というのはその補佐的役割のものでしかなく、何も知らない人もための入り口ではないと思っています。 プログラムを体験したければインターネットにつながるパソコンがあれば無料ですごく高機能なものが手に入ります。Microsoftの開発環境であるVisualStudioなんて初期の頃は購入すれば10万以上したものです。それが今はただで入手し使うことが出来る。その代わり本という形での説明書はありませんけどね(笑)

zasx1098
質問者

補足

すみません。OSとライブラリとアプリケーションについて、もう少し詳しくご教授頂けると幸いです。すみませんが。難しいです。

  • kzr260v2
  • ベストアンサー率48% (790/1624)
回答No.1

まずは、OSとアプリケーションを同時に説明します。 OSとはオペレーティングシステムの略です。パソコン向けですと、MicrosoftのWindows、AppleのMacというパソコン専用のmacOS、この2つが一般的なユーザーが多いです。初心者には少し敷居が高いですがLinuxというOSもあります。最近は企業が社員向けにGoogleのChromeOSが入ったパソコンを購入することが、ビジネス界隈では流行りだしているようです。 ざっくりとしたOSの位置づけは、ハードウェアとアプリケーションの間を取り持つもの、となります。アプリケーションはOSに向けたプログラミング(開発や製造)をするだけで済み、通常はハードウェアが変わっても、同じOS上でなら動作します。 アプリケーションはMicrosoft Officeといった別途販売されているものもあれば、メモ帳のようなOS付属のもの、無料でダウンロードできるフリーソフトなど、種類があります。 アプリケーションを使用する場合は、開発時にきちんとテストされたWindowsを使用することが望ましいです。しかし、例えばWindowsではバージョンが、7、8もしくは8.1、最新の10と新しくなっているので、アプリケーションが開発が7でされていたとしても、現在購入できるWindowsが入ったパソコンは、通常は10です。この場合は、アプリケーション開発元で、10で利用した場合のテストを行い開発元のサイトで情報公開するか、新しいバージョンのアプリケーションの購入を促す、最悪の場合は「開発やめました」、このいずれかになるのが一般的です。 次にライブラリの説明を行います。 パソコンを使うユーザーとしてのライブラリは、「アプリケーションの共通ソフトウェア部分」と言えると思います。種類は以下になります。 ・OSに標準で用意されたライブラリ ・プログラミングツール毎にあるライブラリ ・プログラマーが独自に開発したライブラリ 一番目の、OSに標準で用意されたライブラリは、OSのバージョンと密接に関係します。OSのバージョンが新しくなると、その内部のライブラリも変更されることがあり、アプリケーションによっては動作が変わってしまうことがあります。アプリケーションの開発製造の段階なら、プログラマーが動作確認し、状況に応じて修整できます。 二番目の、プログラミングツール毎にあるライブラリで有名なものは、Microsoft C Runtime Library(Cランタイム)があります。Microsoft Visual Studioというプログラミングツールに付属しています。Visual Studioで開発されたアプリケーションならば、アプリケーション開発元が責任をもって、アプリケーションと一緒に配布します。 とはいえ、昨今ではアプリケーションメーカーが郵送するのは現実的ではないので、場合によっては、ユーザーにMicrosoftのサイトからダウンロードをして対応するような案内がされる場合もあるようです。 また、Windows付属のアプリケーションも、Cランタイムを使う場合があるので、Windowsにも最初からCランタイムが入っていることがあります。 三番目は、プログラマーが独自に開発したライブラリは、通常はユーザーが感知することはありません。例えば、Microsoft Office専用のライブラリは存在します。OfficeのWordやExcelで共通して使えますから、プログラムコードを減らせるなど、開発元は利点がありますが、一般的なユーザーは、それを知らずとも問題なく利用できるからです。 ユーザーが目にする可能性があるとしたら、フリーのソフトウェアを使う際です。例えば、「○○という機能は、△△さんが作成した、✕✕というライブラリを使用しています。」などと言う感じの文言です。 ※ ほかにも、GoogleのAndroidや、AppleのiPhoneやiPad専用のiOSというOSはあります。しかし今回は「パソコン」ということなので、私の独断ではずさせてもらいました。 さらには、電気炊飯器や温度調節パネル付き給湯器など、電子機器にも、それぞれOSが入っている可能性がありますが、パソコン専用ようには利用できませんのではずしています。 ※ OSと、アプリケーションと、ライブラリを説明する書籍や、ネット上の情報は多数ありますが、今回のような3つをかけ合わせた説明をしているものを探すより、私が説明したほうが早いと思い、ご案内してみました。 以上、参考にならなかったらごめんなさい。

zasx1098
質問者

補足

すみません。もう少し詳しくご教授頂けると幸いです。少し難しいです。

関連するQ&A

  • パソコンについて。

    OSとライブラリとアプリケーションについて詳しく懇切丁寧に教えていただけると助かります。すみませんが。

  • サブルーチンについて。

    ExcelやWord、ブラウザやメールソフト、Acrobat Reader等々でファイルを保存する時に表示されるダイアログはコモンダイアログライブラリという名前のダイナミックリンクライブラリを使って実現されています。 みんな同じダイアログなのは同じライブラリを利用しているからです。 ファイルを保存する機能を各アプリケーションの作成者がイチイチ作っていたら時間の無駄だから、OSに付属しているライブラリをアプリケーションから呼び出す(サブルーチンを呼ぶ)ことで作成の手間を省くことができています。 みんな求めている機能(結果)が同じだから共通で使えるライブラリとして用意しておいて使い回してるのです。という説明で、OSに付属しているライブラリをアプリケーションから呼び出すとは、どういうことでしょうか?ご教授頂けると幸いです。すみませんが。

  • 現在、Ubuntu上で動くGUIアプリケーションをCもしくはC++で作

    現在、Ubuntu上で動くGUIアプリケーションをCもしくはC++で作成したいと考えています。 そこでwindows上ではwindows.hといったようにOS依存のライブラリがあると思うのですが Ubuntuではどのようなライブラリを用いるのが良いでしょうか。

  • OSのないプログラム?

    例えば銀行のATMや携帯のアプリケーションなどは恐らくOSがないと思うのですが、ああいったソフトはC言語などので書けるのですか? また書けるとしてもシステムコールのようなものがOSがないなら使えない(ライブラリ関数等が使えない?)と思うのですがその辺はどうなっているのでしょうか? よろしくお願いします。

  • パソコンのハードウェアに強くなるには?

    私はパソコン歴だけなら20年以上あります。ワープロもかなり使いこなせるほうだと思っています。ただし、ハードウェアに関しては弱いと自分で思います。一般の方よりはちょっとだけ知っているかもしれませんが、インターネットなどの通信に関すること、OSに関することなど、やはり苦手です。自分でもっと専門知識を増やし、コンピュータのことを理解したいのですが、どんな方法がありますか。アプリケーションの活用なら、本を読んで独学できますが、ハードとなると、ちょっと自信がありません。スクールとか講座とか、よい方法がありましたら教えてください。

  • パソコンを買ったときについてきたアプリケーションCDは、新しいパソコンにも使いまわせますか?

    新品でFMVを4年ぐらい前に買いました。 OSはウインドーズエックスピーです。 今 新しく中古パソコンを買うつもりです。 ウインドーズエックスピーです。 この場合、OSが同じウインドーズエックスピーですから、私が今手元にある、アプリケーションCD(プロアトラスとかオフィスとかWIN DVDとか アプリケーションCD1、2,3とか数字が振られてるやつとか) これらは全て流用できますか? また、OSが微妙に違う場合も流用できますか? たとえば、私が今手元にあるアプリケーションCD群はエックスピーについてきたものですが、これをMEの中古PCを買っても、インストールはできますでしょうか?

  • 95と98のパソコンネットワーク

    95のノートを使っていますが、98搭載のデスクトップを買いたいと思っています。 そして2台のパソコンでネットを組みたいと考えていますが、参考文献をご存じの方 教えてください。懇切丁寧な説明のものを望んでいます。

  • MediaPlayerが動かない。

    ネットで、DWした動画を見ようとすると、 MPL Loader The DLL "mplapc.dll"can not be loaded.OS reports: このアプリケーションの実行に必要なライブラリファイルの1つが見つかりません。 というメッセージと MPL Loader The DLL "mplapc.dll"can not be loaded.OS reports: このアプリケーションの実行に必要なライブラリファイルの1つが見つかりません。 というメッセージが出ます。 MediaPlayerをDWし直しても、同じです。 どうしたら良いのでしょうか? ちなみに、私が使用しているOSは、Windows Meです。

  • C#のクラスライブラリでメッセージボックスを表示

    VisualStudio2010でVisualC#のクラスライブラリやコンソールアプリケーションでメッセージボックスを表示させたいのですが、 Windowsフォームアプリケーションでは MessageBox.Show("メッセージ本文","タイトル",MessageBoxButtons.OK,MessageBoxIcon.Exclamation); で表示させることができたのですが、 クラスライブラリやコンソールアプリケーションでの中から表示する仕方が分かりません。(OS WindowsXP VisualStudio2010) 1) VisualC#のクラスライブラリでメッセージボックスを表示させるには public class Class1 { }   の中にどのようなコードを記述すればよいのでしょうか。 2) VisualC#のコンソールアプリケーションでメッセージボックスを表示させるには static void Main(string[] args) { }   の中にどのようなコードを記述すればよいのでしょうか。 よろしくお願いします。

  • システム警告音の追加法

    只今OSの再インストール中なんですが、質問させてください。 拡張子aiffのファイルをシステム警告音に入れたいときはどうやってシステム>ライブラリ>サウンドフォルダの中に入れるものなんですか?普通に放り込もうとしても変更できませんのアラートが出てしまうんですが。 追加の警告音は大人しく、iTunesのライブラリに入れておくものなんですか? 前回、システムフォルダ直下のライブラリの情報を見るを表示させようとしたところ、それだけでシステムのライブラリフォルダがどこかに消えてしまって、OS自体がハングアップしてしまいました。 他のアプリケーションをいくつも起動させたままシステムをいじったことだけが今回の原因だったんですか?何が悪かったのかよくわからないので、教えてください。

    • ベストアンサー
    • Mac