アプリ版:「スタンプのみでお礼する」機能のリリースについて

初心者ですが大切な問題に疑問があります。

 たとえばMS-Wordでファイルがつくられる作業の流れは、どうなっていますか。

 ○HDDに保存されているソフトWordがメモリーに呼び出される。
 ○キーボートからの信号はCPUを経由してメモリーに伝えられ作業が行われる。
 ○アプリでメモリーに乗り切れない部分はHDDにとどまる。
 ○こうして作られた文書は内蔵HDDか外部の記憶装置に保存される。

 このような理解で、間違ってないでしょうか?

 「キーボートからの信号はCPUを経由してメモリーに伝えられ作業が行われる」という辺りが、特に自信がありません。もっと正しく、的確な言い方があるような気もします。

 基礎の基礎のレベルですが、しっかり押さえておきたい部分なので、どうかお教え下さい。御願いします。

A 回答 (3件)

まず、ハードウェアとOSなどの基本ソフトウェア、Wordなどの応用ソフトウェア(アプリケーション・ソフトウェア)をいっしょに考えることが全体の仕組みの理解を難しくします。


また、ハードウェアとOSなどの基本ソフトウェアの間にはデバイス・ドライバーやファームウェアなどのソフトウェアも介在します。
加えて、OSの中はファイル等のI/Oを担当する部分、利用者の目に見えない所で動いているサービス・プログラムなどを含め複数稼働している各種ソフトウェアの実行管理を行う部分、実装されている主記憶メモリーの管理を行う部分、アプリケーション・ソフトウェアに対してウィンドウ機能を提供する部分など、各種の機能にわかれています。
Wordをはじめとするアプリケーション・ソフトウェアの中も同様です。
そういった構造的な仕組みを理解しないと本当の動いている姿を頭の中でビジュアル的に理解するのは難しいでしょう。

例えば、プログラムがメモリー上にロードされることと、ロードされ実行中のプログラムが作業領域としてメモリーを使用することを同列に扱われていますがこれはちょっと違います。
プログラムはOSによりロードされます。したがってこのロードするメモリ領域はOS自身が自分のメモリ管理機能を使って取得します。プログラム自身は自分がメモリ上にあることを認識・意識しません。
一方、そのプログラムが動作していて作業領域が必要になった場合は、プログラムはOSが提供するメモリ管理機能のインタフェースを使用して自分が必要とする大きさの作業領域を取得します。ここで作業領域の物理的場所はメモリー領域でありプログラムの動作上はそうであっても、アプリケーション・ソフトウェアの開発に使用する記述言語によっては、プログラムソースを書く人間にとっては「作業領域(メモリー領域)を取得する」とか「作業領域(メモリー領域)を取得する」といったことは全て隠蔽されていていることもあります。

なので、「何を前提に」、「どの部分を切り口に」語るかで違った説明になります。


その上で。。。

>  たとえばMS-Wordでファイルがつくられる作業の流れは、どうなっていますか。
>
>  ○HDDに保存されているソフトWordがメモリーに呼び出される。
>  ○キーボートからの信号はCPUを経由してメモリーに伝えられ作業が行われる。
>  ○アプリでメモリーに乗り切れない部分はHDDにとどまる。
>  ○こうして作られた文書は内蔵HDDか外部の記憶装置に保存される。
>
>  このような理解で、間違ってないでしょうか?

最初に書きましたようにPCを形作る仕組みを階層的・構造的に理解されていないのと、恐らくCPUの機能と基本的な構成要素を理解されていないのと、OSをはじめとするWordより下位(=人間から見てハードウェア寄り)にいる各種ソフトウェアもCPU上で実行されることを理解されていないのと、、、といったことからななり凸凹した理解になっているようです。「キーボートからの“信号”は“CPUを経由して”メモリーに“伝えられ”」といったあたりがその最たるところで、事実と言えば事実ですが少々風変わりな理解ですし、「アプリでメモリーに乗り切れない部分はHDDにとどまる」もなぜここにこの記述がなければならないのか「???」な内容です。

PCユーザーとして「自分が使っているWordなどの機能はどんな風に出来ているのだろう?」という疑問を持つ事自体は自然なことと思いますが、その仕組みについて理解しようとされる際は、ハードウェアからの入力、ハードウェアへの出力をアプリケーション・ソフトウェア以下に階層的に配置され、それぞれが機能を持った各種ソフトウェアが連携して動いているということ、またそれらの内部は構造的に機能配分されていることを前提に進められるとよいでしょう。
ようは1枚岩ではないのです。

なお、質問者様は以前もWordを使った際の動作内容(文章を入力する処理だったかな?)について質問されていた方かと思いますが、その質問への投稿で当方は「...したら~に制御を渡す」といった書き方をしたかと思います。
あれはPC上でプログラム機能を実行できるのはCPUだけなのでわざわざそれを書くことはせず、誰が(=どのプログラムが)入れ替わり立ち代わり(CPU上で)実行されることで利用者がやりたい機能を実現しているかを簡略化して書いたつもりです。
今回のご質問に4つの〇で書かれた内容にはその視点がありません。
なので依然、PCの基本的な仕組みについての理解は大きくは進んでいないようにお見受けします。
見方を変えるといろんな情報が断片的というか整理されて収集・集積されていないために凸凹していて、知っていることをつなぎ合わせて無理やり理解しようとしている感があります。大変失礼ながら質問を読ませていただいた正直な印象です。

何を利用して勉強されているのかわかりませんが、ますがパソコンの仕組みの基本をしっかり学ばれてみてはいかがでしょう?
大きめの本屋さんへ行くとコンピュータ関連のコーナーにそういった入門書があるかと思います。
また、Googleなどで「パソコン 仕組み」とかいった適当なキーワードで検索すると各種の初心者向け説明ページが見つかるかと思います。なかにはきとんと章立てして説明している本格的なものもあると思いますし、それらの中にIT関連の情報サイトなどの連載記事などがあればプロがきちんと構成を考えてまとめているので理解もしやすいかと思います。
そういったものを利用して基本を体系的に学ばれるとよいです。
我流での理解は遠回りなだけでなく、誤った理解を生み修正にも時間を要します。

参考まで。
    • good
    • 0
この回答へのお礼

非常に詳しい、御丁寧な御解説に御礼申し上げます。

御指摘に従い、基礎をきちんと、正確に学ぶ直すつもりです。

ありがとうございました。

お礼日時:2017/02/22 21:23

パソコンの作業スペース(メモリー)=机


HDD=書棚
ソフト=作業マニュアル
キーボード=筆記用具
CPU=頭脳・電卓 の関係で考えると分かり易いと思いますよ。
    • good
    • 0
この回答へのお礼

回答に御礼申し上げます。ありがとうございました。

お礼日時:2017/02/22 21:23

なんか、根本的に勘違いしているような気もします。


メモリは作業しません。プログラムやデータを一時的に記録しておくだけです。

よくある例え話として、
CPU(中央演算装置):作業をする人
メインメモリ(主記憶装置):作業の手順書やメモ書きなどを置いておく、作業台
HDDやSSD(二次記憶装置):作業の手順書や作業結果の報告書などをしまっておく、書棚
てのがあります。

もう一度考えを整理しましょう。
    • good
    • 0
この回答へのお礼

わかりやすい解説に感謝いたします。ありがとうございました。

お礼日時:2017/02/22 21:24

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!