Archive for the ‘ソフトウェアの仕組み’ Category
-
コンピューターソフトウェアのプログラム言語
水曜日, 10月 21st, 2009
コンピューターのソフトウェアはコンピューターの言語で書かれています。コンピューターの内部は0と1の2つの記号からなる2進法の世界です。昔はワイヤードロジックという電線の結び変えでこれを表していましたが、現在のコンピューターソフトウェアではプログラミング言語が用いられています。
これは人工的に作り出されたもので、人が普段自然につかっている言語とことなって文法が明白になっていて、コンピューターで処理して0と1の世界に出来るとうになっています。コンピューターでプログラミング言語を処理するものが言語プロセッサでそれは変換、生成系、実行系の3つに分類されます。変換係はソースプログラムから別のプログラムに変換するものです。生成系はジェネレータと呼ばれるものがあり、これはデータ、手順、条件などから機械語プログラムを生成するものです。実行系にはシュミレータ、エミュレータがあり前者は別のマシンの機械語コードを変換して実行するもので、後者はハードウェアに近いレベルでシュミレータを実現したものです。
コンピューターのソフトウェアをつくるプログラミング言語には数多くの言語が存在します。このコンピューターソフトウェアを作るにはこの言語といった決まりはありませんが、どの言語がどの処理に向いているかはあります。
そして日々新しいコンピューターソフトウェアを進化させるために言語というのも進化してきています。コンピューターソフトウェアを作るためにすべてのコンピュータープログラム言語を覚える必要というのはありません。 -
ソフトウェア実行の仕組み (続き)
水曜日, 9月 16th, 2009
コンピューターソフトウェア実行の仕組みの続きです。
コンパイルされたあとのプログラムのことからはじまりますよ。
そのコンパイルされたオブジェクトファイルはハードディスクの中にファイルとして保存されることになります。これで実行可能なコンピューターソフトウェアが出来上がります。
その出来上がったソフトウェアなんですが、使用するときはハードディスクからメインメモリにもってきて、CPUはメインメモリ上のプログラムを読み込み実行していきます。
こうしてコンピューターソフトウェアは使うことができる状態になります。
CPUの内部にある記憶装置がメインメモリと呼びます。この記憶装置なんですが、電源を切ると内容が消えるためハードディスクなどの補助記憶装置が必要になるのですね。
メインメモリなんですが、やや低速なので、処理を高速化するためにCPUの中に設置されたキャッシュメモリという記憶装置をつかいます。うちの会社では専用サーバの実行速度をあげるために、CPUには3次キャッシュ搭載されたものを選んでいます。以前は2次キャッシュまででしたが先日のトラブルがあり動作速度をあげるために奮発しました。成果は上々のようです。
なんだか今日は疲れたので短いですがここまでに。今日はせっかくダビングしたテレビ番組をみながら、休みたいと思います。会社ではハイテクなんですが自宅ではDVDもなく未だにVHSです・・・。もうブルーレイの時代なんですがねぇ・・。
-
ソフトウェア実行の仕組み
日曜日, 8月 23rd, 2009
サーバー販売している会社で良さそうな1Uサーバーを取り扱っている会社を見つけました。少しサーバダウンなどで迷惑をかけていたのですがなんとか復旧できました。一時はどうなることかと思いましたね。やっと一安心です。
さてコンピューターソフトウェアの話ですが、これまでコンピューターソフトウェアがどのようなものか概念的なものを説明しました。
次はコンピューターソフトウェアの実行の仕組みですよ。
システムソフトウェアにはいろいろあるのですが、一般的なものでウィンドウズで話ます。というか自分自身ウィンドウズなのでマッキントッシュは使うことがないのでわからないといった理由がありますが・・。コンピューターソフトウェアはコンピューターを利用する為に作られます。簡単に作り変えて機能を拡張したり修正することが可能ですね。コンピューターソフトウェアは一つのファイルとしてハードディスクなどに保存されます。実際には一つじゃなく数個になったものもありますが、ひとくくりで考えてください。そのソフトウェアを利用するときには.exeファイルをクリックすると実行できますよね。
そのexeファイルなんですが、もともとはプログラム言語で書かれた文章でできています。これがプログラマさんのお仕事ですね。今では色々なプログラミング言語がありますが、そのプログラム言語を駆使してコンピューターソフトウェアは作られています。そのプログラマさんに書かれた文章をCPUは直接読むことはできません。そこでその文章をCPUがわかる言語に変換して実際にコンピューターが読みます。この動作のことをコンパイラと呼びます。そしてもとの文章をソースプログラム、変換された文章をオブジェクトプログラムと呼びます。このオブジェクトプログラムは機械が読む文章なので、人がよむのは困難です。読もうと思えば読めるらしいですが、数字の羅列だけをみて読むのはやっぱり人には無理ですね。