フリーソフトウェアでお金が?

フリーなコンピューターソフトウェア、とても使いやすいソフトウェアもたくさんありお世話になっています。
こうしたフリーソフトウェアは個人の趣味で作られるものも多いですが、企業でつくられているものも多くあります。
大抵シェアソフトウェアになったりして、使ってくれてお金を払ってくれれば、もっと使いやすいものを使うことができますよ~なんて宣伝しているものもあるのですが、本当にフリーソフトウェアとして配布しているだけで成り立つ団体ってのもあるみたいです。

ただ、どうしてこういった企業が成り立っているのか不思議でした。
無料で配っているのに、社員のお給料や、運営費はどうやってまかなっているのか?ふしぎですよねぇ。

どうもこれは広告費でお金がはいってくるそうな。
そこまで儲かるのかな?と思いましたが、今アフィリなどで儲けている個人の人もいるし、やっぱり便利なソフトウェアだと収入も多いのかな?

フリーソフトウェアのブラウザ・ファイアフォックスで有名なmozillaですが、googleさんの検索エンジンのデフォルトに設定する変わりに巨額の支払をしているらしく、mozillaはこれによって開発資金を確保しているんだとか。
ただ、googleも独自のブラウザ「クローム」を発表しましたよね。これからどうなるかわからないですが、やはり世界シェアの20パーセントを誇るファイアフォックスを切り離すってことにはならないのじゃないかなぁと思います。

This entry was posted on 火曜日, 1月 26th, 2010 at 1:56 PM and is filed under コンピューターソフトウェアの雑談. You can follow any responses to this entry through the RSS 2.0 feed. Both comments and pings are currently closed.

コンピューターソフトウェアを開発

コンピューターソフトウェアを作るのに一番有名なプログラミング言語がC言語です。
c言語とは1972年にAT&Tベル研究所で開発されたコンパイル型の汎用プログラミング言語です。
C言語は人とって記述内容の解釈が容易な高級言語の一つであるのですが、現在使われているプログラミング言語に比べると抽象度は低くなっていて、どちらかというとアセンブリ言語に近いとも言えます。

ですがC言語はコンピューターのシステムソフトウェアやプリケーションソフトウェアを中心として幅広い用途で用いられている言語で、主要なOSの多くがC言語で記述されています。
言語処理にプリプロセッサを持っているという特徴があり、これにより別ファイルからの取り込み、マクロの定義、条件コンパイル、コンパイラへの指示などが可能になっていて、柔軟なソフトウェアを作ることができるようになっています。
また、メモリ管理が開発者の指定でできるというのも特徴にあります。これによりより柔軟な幅広い処理制御を可能にしてるので色々な言語が開発されていますが、今でも使われているコンピューターソフトウェア開発に重要なプログラミング言語となっています。

そしてこのc言語というのは、後に登場するC++、JAVA、D言語といったようなプログラミング言語にも大きな影響を与えています。

色々な言語を使うプログラマーであれば誰もが知っているコンピューターソフトウェア開発に必要なプログラミング言語ではないでしょうか。

This entry was posted on 火曜日, 12月 22nd, 2009 at 11:11 AM and is filed under コンピューターソフトウェア. You can follow any responses to this entry through the RSS 2.0 feed. Both comments and pings are currently closed.

コンピューターソフトウェアのこれから

一番身近なコンピューターソフトウェアというのはマイクロソフトのオフィスではないでしょうか。
エクセルであったり、ワード、アクセス、アウトルック、パワーポイント・・。
これらのコンピューターソフトウェアは仕事でなくてはならないソフトウェアですよね。

エクセルは表計算、ワードは文章書類作成、アクセスはデータベース、アウトルックはメールのやりとり。現在の社会でパソコンを使っていない企業というのは少なくなってきました。グローバルな会社であれば在庫管理やら顧客管理にコンピューターを使っていなくては数が膨大すぎて管理できないのではと思います。
そういった大きな会社であれば自社用のコンピューターソフトウェアを開発し使っているところも多いと思います。

コンピューターソフトウェアを開発するのは費用かかるので一般的には市販のコンピューターソフトウェアを使うことになると思います。今では学校でもコンピューターの使い方、ソフトウェアの使い方を学びますよね。きっとコンピューターに触ったことのない人のほうが減ってきたのではないでしょうか。これからの社会はコンピューターがなくてはならない社会になってくると思います。
そんな社会になったら使い方がわからないから困るななんて思う人もいると思いますが、コンピューターソフトウェアも進化していますので今よりもっとユーザーに使いやすい形になってくると思います。
今は少しソフトウェアについて学ばないと利用できないものも多いですが、これから何をしたいかさえ入力したならその通りの処理をしてくれるコンピューターソフトウェアがでてくると思います。

今よりもっと生活の一部としてコンピューターソフトウェアは進化していくのではないでしょうか。

This entry was posted on 火曜日, 12月 15th, 2009 at 11:36 AM and is filed under コンピューターソフトウェアの雑談. You can follow any responses to this entry through the RSS 2.0 feed. Both comments and pings are currently closed.

オペレーションシステム

コンピューターを動かすのになくてはならないのがオペレーティングシステムです。
コンピューターを制御し、プリケーションソフトなどがコンピューター資源を利用可能にするためのソフトウェアで、普段ではよくOSといって略されることが多くなっています。

オペレーションシステムは入出力の制御、メモリやハードディスクなどのハードウェアの管理、プロセスの管理といった、コンピューターの基本的な管理、制御を行います。アプリケーションソフトウェアはオペレーティングシステムが提供される機能を利用して動作します。

パソコン向けのオペレーションシステムの代表的な製品として、windows、Mac OS、UNIX、Linuxなどを挙げることができ、この中でもwindowsは一連のシリーズと合わせると市場の90パーセント以上のシェアを持つといわれています。
パソコンだけでなくオペレーションシステムは、サーバー、スーパーコンピューター、PDA、携帯電話、デジタルカメラ、産業用機械、生活家電に至るまでさまざまなコンピューター機器に搭載されています。

windows・・・microsoft社のOS。MS-DOS後継として開発され、GUI環境、マルチタスク、ネットワーク通信などに対応しています。windows3.1、95、98、ME、2000、XP、vistaとバージョンアップを重ね、現在の最新バージョンは7です。
Mac OS・・・apple社のOS。macintshシリーズに搭載されているOSで早くからGUI環境を備え、DTPやマルチメディア業界でよく利用されたりします。
UNIX・・・アメリカAY&T社のベル研究所で開発されたOS。仕様が公開されているため学術きなやコンピューターメーカーの手によって普及しました。独自の拡張が施された多くの派生OSが開発され、現在ではUNIX風システム体系をもったOSを総称的にUNIXと呼ぶことも多くなりました。マルチタスク機能、ネットワーク機、高い安定性とセキュリティーをもつことで知られています。
Linux・・・フィンランドのヘルシンキ大学の大学院生によって開発されたOS。UNIX互換性があります。開発された後、フリーソフトウェアとして公開され、全世界のボランティアの開発者によって改良がされています。他のOSに比べ、低い性能のコンピューターでも軽快に動作し、ネットワーク機能やセキュリティーに優れ、非常に安定しているという特長を持っています。

This entry was posted on 木曜日, 11月 26th, 2009 at 10:58 AM and is filed under コンピューターのシステム. You can follow any responses to this entry through the RSS 2.0 feed. Both comments and pings are currently closed.

フリーソフトウェア

コンピューターソフトウェアにはフリーソフトウェアというものがあります。

フリーソフトウェアとは、自由なソフトウェアのことですが、自由なソフトウェアと無償のソフトウェアというものがあります。
自由なソフトウェアとは、コピー、研究、変更、配布等の扱いについて制限がつけられていないソフトウェア。ソースコードが開示されています。無償のソフトウェアとは利用するために料金を必要としないソフトウェアのことです。

フリーソフトというと無償のソフトウェアだと思うと思いますが、すべてのソフトウェアが無償というわけではありません。が、フリーソフトといえばほとんど無償であることが多いです。

一方でパブリックドメインソフトウェアいうものもあり、フリーソフトとは違い著作権を放棄した上で配布されるソフトウェアのことです。主にネットワークで流通するソフトウェアで使われ、著作者によりその著作権が放棄されているが故に、利用者は著作権による制限なしにソフトを利用することが出来ます。ちょっとフリーソフトとの区別が難しいですね。

コピーレフトという言葉を聞いたことがあると思います。コピーライトの逆の意味でがあり、自由なソフトウェアが永続的に自由であるための概念としてコピーレフトという言葉が使われています。コピーレフトとは、配布にあたって配布される人にソースコードを自由に取得、変更、再配布する権利を提示せずにプログラムの再配布をしてはいけないという制約をつけることでいったんフリーソフトウェアとになったソフトは他人の手を経て再配布されてもフリーソフトであり続けることを保障するものであります。

数多くにフリーソフトが配布されていますが、作った方に感謝して使わせていただきましょう。

This entry was posted on 金曜日, 11月 13th, 2009 at 11:50 AM and is filed under コンピューターソフトウェア. You can follow any responses to this entry through the RSS 2.0 feed. Both comments and pings are currently closed.

コンピューターソフトウェアのプログラム言語

コンピューターのソフトウェアはコンピューターの言語で書かれています。コンピューターの内部は0と1の2つの記号からなる2進法の世界です。昔はワイヤードロジックという電線の結び変えでこれを表していましたが、現在のコンピューターソフトウェアではプログラミング言語が用いられています。
これは人工的に作り出されたもので、人が普段自然につかっている言語とことなって文法が明白になっていて、コンピューターで処理して0と1の世界に出来るとうになっています。

コンピューターでプログラミング言語を処理するものが言語プロセッサでそれは変換、生成系、実行系の3つに分類されます。変換係はソースプログラムから別のプログラムに変換するものです。生成系はジェネレータと呼ばれるものがあり、これはデータ、手順、条件などから機械語プログラムを生成するものです。実行系にはシュミレータ、エミュレータがあり前者は別のマシンの機械語コードを変換して実行するもので、後者はハードウェアに近いレベルでシュミレータを実現したものです。

コンピューターのソフトウェアをつくるプログラミング言語には数多くの言語が存在します。このコンピューターソフトウェアを作るにはこの言語といった決まりはありませんが、どの言語がどの処理に向いているかはあります。
そして日々新しいコンピューターソフトウェアを進化させるために言語というのも進化してきています。コンピューターソフトウェアを作るためにすべてのコンピュータープログラム言語を覚える必要というのはありません。

This entry was posted on 水曜日, 10月 21st, 2009 at 11:39 AM and is filed under ソフトウェアの仕組み. You can follow any responses to this entry through the RSS 2.0 feed. Both comments and pings are currently closed.

ソフトウェア実行の仕組み (続き)

コンピューターソフトウェア実行の仕組みの続きです。

コンパイルされたあとのプログラムのことからはじまりますよ。

そのコンパイルされたオブジェクトファイルはハードディスクの中にファイルとして保存されることになります。これで実行可能なコンピューターソフトウェアが出来上がります。
その出来上がったソフトウェアなんですが、使用するときはハードディスクからメインメモリにもってきて、CPUはメインメモリ上のプログラムを読み込み実行していきます。
こうしてコンピューターソフトウェアは使うことができる状態になります。
CPUの内部にある記憶装置がメインメモリと呼びます。この記憶装置なんですが、電源を切ると内容が消えるためハードディスクなどの補助記憶装置が必要になるのですね。
メインメモリなんですが、やや低速なので、処理を高速化するためにCPUの中に設置されたキャッシュメモリという記憶装置をつかいます。

うちの会社では専用サーバの実行速度をあげるために、CPUには3次キャッシュ搭載されたものを選んでいます。以前は2次キャッシュまででしたが先日のトラブルがあり動作速度をあげるために奮発しました。成果は上々のようです。

なんだか今日は疲れたので短いですがここまでに。今日はせっかくダビングしたテレビ番組をみながら、休みたいと思います。会社ではハイテクなんですが自宅ではDVDもなく未だにVHSです・・・。もうブルーレイの時代なんですがねぇ・・。

This entry was posted on 水曜日, 9月 16th, 2009 at 1:14 PM and is filed under ソフトウェアの仕組み. You can follow any responses to this entry through the RSS 2.0 feed. Both comments and pings are currently closed.

ソフトウェア実行の仕組み

サーバー販売している会社で良さそうな1Uサーバーを取り扱っている会社を見つけました。少しサーバダウンなどで迷惑をかけていたのですがなんとか復旧できました。一時はどうなることかと思いましたね。やっと一安心です。

さてコンピューターソフトウェアの話ですが、これまでコンピューターソフトウェアがどのようなものか概念的なものを説明しました。
次はコンピューターソフトウェアの実行の仕組みですよ。
システムソフトウェアにはいろいろあるのですが、一般的なものでウィンドウズで話ます。というか自分自身ウィンドウズなのでマッキントッシュは使うことがないのでわからないといった理由がありますが・・。

コンピューターソフトウェアはコンピューターを利用する為に作られます。簡単に作り変えて機能を拡張したり修正することが可能ですね。コンピューターソフトウェアは一つのファイルとしてハードディスクなどに保存されます。実際には一つじゃなく数個になったものもありますが、ひとくくりで考えてください。そのソフトウェアを利用するときには.exeファイルをクリックすると実行できますよね。
そのexeファイルなんですが、もともとはプログラム言語で書かれた文章でできています。これがプログラマさんのお仕事ですね。今では色々なプログラミング言語がありますが、そのプログラム言語を駆使してコンピューターソフトウェアは作られています。

そのプログラマさんに書かれた文章をCPUは直接読むことはできません。そこでその文章をCPUがわかる言語に変換して実際にコンピューターが読みます。この動作のことをコンパイラと呼びます。そしてもとの文章をソースプログラム、変換された文章をオブジェクトプログラムと呼びます。このオブジェクトプログラムは機械が読む文章なので、人がよむのは困難です。読もうと思えば読めるらしいですが、数字の羅列だけをみて読むのはやっぱり人には無理ですね。

This entry was posted on 日曜日, 8月 23rd, 2009 at 12:02 PM and is filed under ソフトウェアの仕組み. You can follow any responses to this entry through the RSS 2.0 feed. Both comments and pings are currently closed.

システム・アプリ・プログラム

仕事でサーバー管理をしています。自社では1Uサーバーを利用しているのですが、古くなってきた1Uサーバーの調子が悪いような気もします。お客様には迷惑掛けています・・・。新しいのを入れようにもなかなか進まず困っている状態です。
そんなこんなで忙しい毎日ですが、今日もはじめますね~。

一般のコンピューターシステムにはソフトウェアを3つの階層に分けています。プリケーションソフトウェア、システムソフトウェア、そしてプログランミングツールです。
どれもコンピューターソフトウェアとして切っては切り離せない関係になっているのですが、一つずつ見ていきましょう。

・システムソフトウェア
ハードウェアやシステムが動作するの補助しています。アプリケーションソフトウェアが詳細なことまで考えなくてもいいように、たとえばハードウェアの動作を制御することですかね。基本的にOSがそれの役割を担っていますね。

・プログラミングツール
実際にコンピューターソフトウェアを作るとときに必要となるプログラマさんがプログラムを書くお手伝いをするものです。テキストエディタやコンパイラ、デバッガなどがそれにあたります。

・アプリケーションソフトウェア
特定の動作を実行するためのソフトウェアです。実際にしられるコンピューターソフトウェアといえばこれですね。

私も書類をつくったりするのにコンピューターソフトウェアのお世話になっています。
今では文章作成ソフトウェアやデータベースがなかったら仕事もできないくらい重要なものになっていますね。

This entry was posted on 金曜日, 6月 19th, 2009 at 11:39 AM and is filed under コンピューターのシステム. You can follow any responses to this entry through the RSS 2.0 feed. Both comments and pings are currently closed.

アプリケーションとシステム

サーバー管理の仕事を始めて各サーバー会社からおすすめサーバーのことを聞くことになりました。ですが、おすすめサーバーといいましてもサーバーのことについて全然知識もなかったので大変でした。
今ではなんとか仕事もできているので少しは知識もついたと思いますが、わからないこともいっぱいで日々勉強です。

さてコンピューターソフトウェアなんですが、一般的にコンピューターソフトウェアといえばアプリケーションソフトウェアを思い出します。パソコンを仕事やプライベートで使うエクセルなどの表計算ソフトや、インターネットを見るときに使うブラウザもあれら全部コンピューターソフトウェアとなります。
また、DVDプレイヤーや電子レンジの制御ソフトもパソコンとは違った形ですがコンピューターソフトウェアが入っています。ただそのようなコンピューターソフトウェアは組み込みシステムになっており、アプリケーションソフトウェアとオペレーションシステムが一緒になっていて、区別できない場合があります。

近年では携帯電話の性能向上により、携帯電話にもアプリケーションソフトウェアが登場しましたよね。あれもコンピューターソフトウェアの新しい形ですね。

コンピューターソフトウェアはアプリケーションソフトウェアとシステムソフトウェアの相互関係から成り立っています。例をあげるなら電球と発電システムでしょうかね。発電システム(システムソフトウェア)は電力を発生させますが、利用する人に電球(アプリケーション)がなければ電力を使うことができませんよね。

一時期コンピューターソフトウェアで裁判が起こりました。それはオペレーションシステムとアプリケーションソソフトウェアの境界があいまいであの有名なマイクロソフトがインターネットエクスプローラーがウィンドウズの一部なのか独立したアプリケーションソフトウェアなのか裁判になりました。どちらもなければ動かないので切り離すことはできないかもしれませんね。

This entry was posted on 金曜日, 5月 22nd, 2009 at 11:22 AM and is filed under コンピューターのシステム. You can follow any responses to this entry through the RSS 2.0 feed. Both comments and pings are currently closed.