質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
アーキテクチャ

アーキテクチャとは、情報システム(ハードウェア、OS、アプリケーション、ネットワーク等)の設計方法、設計思想、設計思想に基づいて構築されたシステム構造をアーキテクチャと呼びます

Q&A

3回答

967閲覧

なぜソフトウェアという概念が誕生したのでしょうか??

strike1217

総合スコア651

アーキテクチャ

アーキテクチャとは、情報システム(ハードウェア、OS、アプリケーション、ネットワーク等)の設計方法、設計思想、設計思想に基づいて構築されたシステム構造をアーキテクチャと呼びます

0グッド

0クリップ

投稿2017/06/29 13:20

編集2022/01/12 10:55

最近、CPUやメモリといったハードウェアに関する勉強をしています。
アセンブリ言語におけるハードとソフトの境界が非常に面白いですね。

ハードウェアとしては超基本的な部分は、足し算、引き算、掛け算、割り算、AND、OR、NOTといった算術・論理演算しか行っていないかと思います。
たったこれだけで様々なことが可能になったコンピュータはかなりすごいものですね!!
ところが、最近のCPUはどんどん高度化してきて、かなり複雑な処理をワイヤードロジックとして組まれています。

一見OSの機能かな??と思うような複雑な処理ができるような回路が組まれているものもあります。
ここからはプロセッサの機能、ここからはOSの役割といった境界が正直良くわからないんですよね・・・・

そこで、
ここまで複雑な処理をワイヤードロジックのみで実現できるなら、ソフトウェアで可能なことは基本的にハードのみで実装できるのではないかな??と思いました。

するとなぜソフトウェアという概念が誕生したのか疑問が湧いてきました。

汎用性を高めるという意味でOSという概念が生まれたのではないかなと思っているのですが・・・

最近のかなり綺麗なグラフィックのゲームなんかはソフトウェアでプログラミングせずに、ハードとしてすべてワイヤードロジックとして組んでも同じものを作ることができるのではないかな??と思いました。
(その1つのゲーム専用のハードという事になり、まったくゲーム以外にはなんの役にも立たないですが・・・・)

ハードウェアでできるなら、なぜソフトウェアという概念を作りあげたんでしょうか??
ソフトウェアの起源が気になります。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答3

0

最近のかなり綺麗なグラフィックのゲームなんかはソフトウェアでプログラミングせずに、ハードとしてすべてワイヤードロジックとして組んでも同じものを作ることができるのではないかな??と思いました。

一つだけ指摘してみたいことがあります。CPUにせよGPUにせよ、中身は全てワイヤードロジックで組まれてはいないと思います。その実装にはマイクロプログラムが用いられていて、ソフトウェア的な仕組みで「単純な回路を制御して複雑なことを実現している」のだと思います。全てをワイヤードロジックで組むことは理論的に可能かも知れませんが、そういうふうにしてしまうと・・・

回路の面積が膨大になる=>プロセッサが巨大になる=>消費電力も大きくなる=>面積が広くなるということはスピードも遅くなる

ということで、単純なメカニズムをソフトウェアによって制御し、複雑なことが実現できるようというソフトウェアを用いた考え方は必須の要素となるのだと自分は思います。

投稿2017/06/29 13:36

KSwordOfHaste

総合スコア18392

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

strike1217

2017/06/29 14:08

あーー。 もしかして パイプライン処理のストールとかはワイヤードではなく、ストールする命令をアセンブリ言語と全く同じ信号をマイクロコード変換ユニットに流しているのかもしれないですね。 そうすれば、ワイヤードロジックの部分は少なくなりますね!!
guest

0

こんにちは。

無茶苦茶お金と時間がかかりますよ。
複雑なロジックを組むにはLSIでないと無理ですが、LSIを起こすには非常にお金がかかります。やり方にもよりますが数千万円~数億と聞きます。そして、最低でも数週間、安く作る場合は更に多くの期間がかかります。
致命的なバグがあったら、それが全てパーです。

そこでFPGAなどの回路をソフト的に実装できるツールを使ってデバッグします。
この時点でソフトウェアですね。ハードだけで開発するのは正直、お金と時間がいくらあっても足りないです。

投稿2017/06/29 13:42

編集2017/06/29 13:43
Chironian

総合スコア23272

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

strike1217

2017/06/29 13:52

ハードのみでの実装が不可能というわけはないですよね?
mike2mike4

2017/06/29 14:08

ヨタ話ですが、昔、学校にアナログコンピュータというのがあって、電気回路で積分微分するものでした。特殊化したものなら高速演算できるのではないかと
Chironian

2017/06/29 14:12

> ハードのみでの実装が不可能というわけはないですよね? お金と時間を大量に投入すれば可能と思います。 しかし、そんな酔狂なことをする大金持ちはいないと思いますよ。
guest

0

「ソフトウェアの起源」で検索するとこちらのページが見つかりました。
「汎用性を高めるという意味でOSという概念が生まれたのではないかなと思っているのですが」
質問者様がおっしゃっているようなことが書いてありました。

このページから引用します。

ノイマン型コンピューターの誕生
ABCに始まって以来ENIACなど多くのコンピューターが誕生しましたが、その全てが汎用性に乏しいという欠点を持っていました。

 しかし後にこれを打破する画期的な手法が考案されました。それが1946年に考案された、後に「コンピュータの父」とも呼ばれる

 アメリカの数学者ジョン・フォン・ノイマンによる「プログラム内蔵方式」です。

 これはこれまでハードウェアに固定して持たせていたプログラムを独立させて汎用性を持たせたハードウェアに、外部から命令を与えて実行させるといった方式で、

 「ソフトウェア」の概念の誕生でもありました。

ノイマン型コンピュータ誕生以前のコンピュータは

真空管の配列や配線といったハードウェア的要素がそのまま計算内容に汎用されていたため、別種の計算を行うためには一から配列や配線を組み替えねばならず、汎用性が面では著しく乏しかったのです。

とのことです。

投稿2017/06/29 13:38

編集2017/06/29 13:50
退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

strike1217

2017/06/29 13:55

ノイマン型コンピューターの誕生=ソフトウェアの誕生なんですね!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問