平成28年秋季 問19. ラウンドロビン
問題文「タイムクウォンタムが2秒のラウンドロビン方式で処理されるタイムシェアリングシステムにおいて、プロセス1~3が逐次生成されるとき、プロセス2が終了するのはプロセス2の生成時刻から何秒後か。ここで、各プロセスはCPU処理だけで構成され、OSのオーバヘッドは考慮しないものとする。また、新しいプロセスの生成と中断されたプロセスの再開が同時に生じた場合には、新しく生成されたプロセスを優先するものとする。」
解答群
ア. 12
イ. 14
ウ. 16
エ. 17
何回か同じ勉強をしているつもりだが、結局用語の意味がわからなかったので調べてみた、が、結構色々あるものの端的に答えてくれるサイトが見つからない。
テニスの総当たり戦の解説なんかも出てきて何が何だかわからない結果の中から、次のサイトを見つけた。
タスクスケジューリング(ラウンドロビン方式)
簡単にまとめてしまうと、到着したプロセスに平等に同じ時間だけ処理をさせ、終わったら一番待っているプロセスの一番後ろに待たせる、という処理だ。
では、実際に行ってみようではないかっ( ゚Д゚)
※俺の解答
ここでいつもお世話になっている応用情報技術者試験ドットコムと俺の解釈が以下の文言で解釈が割れた。
「新しいプロセスの生成と中断されたプロセスの再開が同時に生じた場合には、新しく生成されたプロセスを優先」
応用情報技術者試験ドットコムさんの解答は以下のようだ。
※応用情報技術者試験ドットコムさんの解答
どちらを信じるかは見てる人にお任せしたい。
俺の解釈は以下の通り。
6秒時点で「プロセス3」が生成される。この時点で待ち行列には「プロセス1」が待っていて、6秒の最後に処理が中断した「プロセス2」がその後にいる。
このような場合が生じた際に、「新しく生成されたプロセスを優先」とあるので、「中断されたプロセスの再開」である「プロセス1」は待たされ、「プロセス3」を行うと解釈している。
応用情報技術者試験ドットコムさんの解釈では、競合が発生するのは処理が終了した直後で、待ち行列に加わる「プロセス2」が新たに生成された「プロセス3」と競合し、待ち行列の順番は「プロセス1」、「プロセス3」、「プロセス2」となる。
そして恐ろしいことにプロセス2が生成された時間から終了までが問われているこの問題では回答がどちらも「14秒後」になるのだ。。。
そこで、他のサイトも見てみると「IT試験ドットコム」では俺の解釈で間違いないようだ、が、解説がほとんどないためよくわからない。
ここはどちらも正解だが、同じような問題が出た時、俺は俺のやり方で行こうと思う。何故か?俺は俺を含めて誰も信じないが、どちらも信用できないならば俺のが正しいと思うからだっ( ゚Д゚)
2017年3月11日土曜日
CPUの遊休時間
平成28年秋季 問17. CPUの遊休時間
問題文「五つのタスクを単独で実行した場合のCPUと入出力装置(I/O)の動作順序と処理時間は、表のとおりである。優先度”高”のタスクと、優先度”低”のタスクのうち一つだけを同時に実行する。実行を開始してから、両方のタスクの実行が完了するまでの間のCPUの遊休時間が最も短いのは、どの優先度”低”のタスクとの組み合わせか。ここで、I/Oは競合せず、OSのオーバヘッドは考慮しないものとする。また、表の()内の数字は処理時間を示すものとする。」
解答群
ぱっとみ解説だけでは理解ができず、ランボー1を見ながらぼーっと眺めていて初めて理解ができた。
この問題ではI/O(Input / Output)が競合しないという点がわかりにくかった様子。I/Oが競合しない、つまり、I/Oの部分は二つのタスクが同時に行えるということだ。
言葉だけではわかりにくいのでまずは表にしてみた。I/Oの競合が発生しないというのは、ここでは2つのタスクが同時にI/Oを行えるということなので、同じ列に重なっていても問題ないことになる。
1つのタスクはCPUを使っているか、I/Oを行っているかのいずれかしかできないので、上の表にある灰色の部分のようにCPUが使われていない時間が発生することになる。
これがCPUの遊休時間ということになる。
もう一つ注意が必要なのは、問題が「最も早く処理が終わる時間」を聞いていないという点だ。このような問題は問いの内容によって答えが変わってくるので注意が必要だと思う。簡単に手書きで答えが導き出せるようにするのが必要だと思う。
問題文「五つのタスクを単独で実行した場合のCPUと入出力装置(I/O)の動作順序と処理時間は、表のとおりである。優先度”高”のタスクと、優先度”低”のタスクのうち一つだけを同時に実行する。実行を開始してから、両方のタスクの実行が完了するまでの間のCPUの遊休時間が最も短いのは、どの優先度”低”のタスクとの組み合わせか。ここで、I/Oは競合せず、OSのオーバヘッドは考慮しないものとする。また、表の()内の数字は処理時間を示すものとする。」
解答群
ぱっとみ解説だけでは理解ができず、ランボー1を見ながらぼーっと眺めていて初めて理解ができた。
この問題ではI/O(Input / Output)が競合しないという点がわかりにくかった様子。I/Oが競合しない、つまり、I/Oの部分は二つのタスクが同時に行えるということだ。
言葉だけではわかりにくいのでまずは表にしてみた。I/Oの競合が発生しないというのは、ここでは2つのタスクが同時にI/Oを行えるということなので、同じ列に重なっていても問題ないことになる。
1つのタスクはCPUを使っているか、I/Oを行っているかのいずれかしかできないので、上の表にある灰色の部分のようにCPUが使われていない時間が発生することになる。
これがCPUの遊休時間ということになる。
もう一つ注意が必要なのは、問題が「最も早く処理が終わる時間」を聞いていないという点だ。このような問題は問いの内容によって答えが変わってくるので注意が必要だと思う。簡単に手書きで答えが導き出せるようにするのが必要だと思う。
Labels:
応用情報処理技術者試験
2017年3月10日金曜日
トレーニング日誌 2017/3/8~
一連の記事で行っている実験のまとめはこちらのページ、生活実験:トレーニングを参照ください。
ざっくりまとめると忙しい中で一日30分のトレーニングと食事制限で体脂肪を落とせるのか?という実験をやっています。
2017/3/8
体重:74.9kg
体脂肪率:21.2%
基礎代謝量:1646kcal
基礎代謝量:1646kcal
肉体年齢:38歳
シックスパックトレーナー Lv.15
※特にコメントはない。
体重:74.8kg
体脂肪率:22.3%
基礎代謝量:1620kcal
基礎代謝量:1620kcal
肉体年齢:40歳
フレンチプレス(7.5kg) x25
ワンハンドローイング(7.5kg) x20
サイドレイズ+デッドリフト(7.5kg) x10
トライセプスエクステンション x10
トライセプスエクステンション x10
大胸筋アイソメトリック x2
Labels:
生活実験
2017年3月8日水曜日
ガーベジコレクション、その他メモリ配置
平成28年秋季 問16. ガーベジコレクション
問題文「プログラム実行時の主記憶管理に関する記述として適切なものはどれか。」
解答群
ア. 主記憶の空き領域を結合して一つの連続した領域にすることを、可変区画方式という。
イ. プログラムが使用しなくなったヒープ領域を回収して再度使用可能にすることを、ガーベジコレクションという。
ウ. プログラムの実行中に主記憶内でモジュールの格納位置を移動させることを動的リンキングという。
エ. プログラムの実行中に必要になった時点でモジュールをロードすることを、動的再配置という。
正直なところ、正解がイだとわかったのはガーベジコレクションという言葉を聞いたことがあって、なんとなく間違いではないことだけがわかったからで、その他の解答群についてはさっぱり理解していないので調査対象とした。
まずはそれぞれの用語をしっかりと把握してみよう。
今回検索してみて、絵付きで解説してくれているサイトさんでは断トツにわかりやすく、且つ要領を得たサイトがすぐに見つかった。
Geechs Managineさんの「5分で分かるガーベジコレクションの仕組み」である。
実際Javaを勉強しようとして出てきた用語なのでよく覚えているが、C言語などを教えてもらおうとして挫折した頃は、メモリの解放なんかについて説明を受けた記憶がある。
ざっくりまとめてしまうとプログラムが一旦利用したメモリの領域を、自動で開放する仕組み、ということになる。
Javaなどの高級言語以前はプログラムを書くときにメモリの解放を指定する必要があったとかなんとか・・・ 実際にはそこまでどっぷりプログラムの勉強できなかったのでそんなコードを書いた覚えはまるでないがw
後、これは応用情報にはあまり出てこないかもしれないが今後のために覚えておきたいのが「Scavenge GC」と「Full GC」だ。
こちらも上のリンクである程度教えてくれているが、まとめてしまうとヒープ領域と呼ばれるメモリ領域には二つの種類があり、比較的長い間使われる(つまり複数回参照されるような)オブジェクトは「Old領域」それ以外の命が短いオブジェクトは「New領域」に格納される。この「New領域」と呼ばれるところをざっくり掃除してくれるのが「Scavenge GC(Scavengerでハイエナなどの動物、清掃する・不要物を除去するなどの意)」で「Old・New領域」両方を全部掃除するのが「Full GC」ということだ。
何故覚えておきたいかというと、「Full GC」が頻繁に起こるとプログラム処理時間に影響があるから、とだけ書いておきたい。詳しく知りたい方は上記リンクを参照されたい。
次に可変区画方式について、だが、ググった結果を色々見ていると非常に端的に表現してくれているサイトを見つけた。
京都産業大学 大本教授?の平成14年度システムソフトウェア講義資料の「第7章 記憶管理」である。
おそらくは講義に使用するためにパワーポイント的にまとめた資料だと思われるが、非常に端的にかつ的確に要点をまとめてくれているのでわかりやすい。初めて開いた時は何かの冗談かバグかと思ったぐらいだが・・・
で、可変区画方式というのは、メモリを使う場合にプログラムが必要な分量だけ使う方式、ということになるが、もっと言うとプログラムが必要とするメモリのサイズはプログラムによって違うため、どれだけのサイズを指定するか?という問題が出てくる。
この割り当て方法について、プログラムがどのくらい使用するかは「しらんっ これだけ用意したからこれ使えっ( ゚Д゚)」と指定する方式を「固定区画方式」、
「ここに必要な分の領域があるからここを使ってねぇ(*´▽`*)」と指定する方式を「可変区画方式」というらしい。
他のページも時間があるときに(できればサイトがなくならないうちに)見てみたいが、他に試験で使うような内容を書いてくれているサイトもあったので紹介しておきたい。
it-資格.jpというサイトさんの「実記憶管理」である。
どうやら基本情報か応用情報資格試験用のサイトのようで、関連する用語をまとめてくれてはいる、が、全てが有益か?全てがわかりやすいか?という点では疑問がある。
次に、動的リンキングなのだが、この用語についてはなかなかピンポイントで「それが何を意味するか」という答えが出てこなかった。
ググった結果の多くは試験を受ける人を対象にしたもので、非常にざっくりと用語を説明してくれているだけである。
そこで見つけたのは「基本情報処理技術者になってください」というサイトさんの「動的リンキング」というページである。
このサイトさんはおそらく実際に何かのプログラムを作っているような人が書いているサイトなのか、非常にゆるーく、且つわかりやすく実際に怒っているだろうと思われることを例示して書いてくれている。
ただ、書かれている内容がゆるすぎる感じもあったので、英語でも検索してみた。
そこで見つけたのは「Computer Science from the Bottom Up」というサイトさんの「Chapter 9. Dynamic Linking」というページである。
転載させていただくと、
******************************
Each executable contains a reference essentially saying "I need library foo". When the program is loaded, it is up to the system to either check if some other program has already loaded the code for library foo into memory, and thus share it by mapping pages into the executable for that physical memory, or otherwise load the library into memory for the executable.
******************************
ざっくり訳すと
******************************
実行ファイル(プログラム)は「こんなライブラリが必要だよぉ」と言う情報だけ持っていて、そのプログラムが実行されるときにシステム(OS)側が他のプログラムが同じライブラリをメモリ上にロードして(呼び出して)いるかどうかをチェックし、あればその場所をプログラムに教えなければメモリにロードするということをする。
******************************
ということである。(だいぶ意訳しているので疑わしい場合は自分で訳してほしい。)
そして最後に「動的再配置」だが、これも同じくしっかりとした説明を探すのが難しかった。色々とブラウジングしてここで(全部は当然理解できなかったものの)ある程度納得のいく説明を見つけることができた。
宮城教育大学、(なんの授業かはわからないが)「授業のページ」より「オペレーティングシステム第5-2章 主記憶の管理-2-」
このページ中、「5.8 動的再配置機能を用いるマルチプログラミング」という項目があり、内容を抜粋すると
******************************
メモリフラグメンテーション問題を解決するには、空き領域を結合してーつの連続した大きな空き領域にすればよい。それには、実行中のプロセスをメモリ内で移動させる必要がある。この処理を、メモリコンパクション、この機能を動的再配置機能という。****(中略)****この動的再配置機能によって、プロセスをメモリにロードするための領域の動的作成、削除、拡大、縮小によって生ずるメモリフラグメンテーションを解決できる。
******************************
そろそろ疲れてきたのでフラグメンテーションについては割愛させてもらうが、メモリのフラグメンテーションが発生した場合に、領域を効率的に使うために利用されるのが動的再配置と呼ばれる機能ということになる。
可変区画方式ではメモリが充分に空いている場所を指定してプログラムを配置するため、フラグメンテーションが発生する。このような場合にメモリを有効利用するため実行中のプログラムが利用しているメモリを別の場所に移動することでメモリの利用率を向上させようというものらしい。
ここまで調べて改めて問題を読み返してみると、「ア.ウ.エ.」については明らかに説明している文章と用語が一致していないのがわかる。。。
というか今日の俺は頑張ったっ( ゚Д゚)
問題文「プログラム実行時の主記憶管理に関する記述として適切なものはどれか。」
解答群
ア. 主記憶の空き領域を結合して一つの連続した領域にすることを、可変区画方式という。
イ. プログラムが使用しなくなったヒープ領域を回収して再度使用可能にすることを、ガーベジコレクションという。
ウ. プログラムの実行中に主記憶内でモジュールの格納位置を移動させることを動的リンキングという。
エ. プログラムの実行中に必要になった時点でモジュールをロードすることを、動的再配置という。
正直なところ、正解がイだとわかったのはガーベジコレクションという言葉を聞いたことがあって、なんとなく間違いではないことだけがわかったからで、その他の解答群についてはさっぱり理解していないので調査対象とした。
まずはそれぞれの用語をしっかりと把握してみよう。
今回検索してみて、絵付きで解説してくれているサイトさんでは断トツにわかりやすく、且つ要領を得たサイトがすぐに見つかった。
Geechs Managineさんの「5分で分かるガーベジコレクションの仕組み」である。
実際Javaを勉強しようとして出てきた用語なのでよく覚えているが、C言語などを教えてもらおうとして挫折した頃は、メモリの解放なんかについて説明を受けた記憶がある。
ざっくりまとめてしまうとプログラムが一旦利用したメモリの領域を、自動で開放する仕組み、ということになる。
Javaなどの高級言語以前はプログラムを書くときにメモリの解放を指定する必要があったとかなんとか・・・ 実際にはそこまでどっぷりプログラムの勉強できなかったのでそんなコードを書いた覚えはまるでないがw
後、これは応用情報にはあまり出てこないかもしれないが今後のために覚えておきたいのが「Scavenge GC」と「Full GC」だ。
こちらも上のリンクである程度教えてくれているが、まとめてしまうとヒープ領域と呼ばれるメモリ領域には二つの種類があり、比較的長い間使われる(つまり複数回参照されるような)オブジェクトは「Old領域」それ以外の命が短いオブジェクトは「New領域」に格納される。この「New領域」と呼ばれるところをざっくり掃除してくれるのが「Scavenge GC(Scavengerでハイエナなどの動物、清掃する・不要物を除去するなどの意)」で「Old・New領域」両方を全部掃除するのが「Full GC」ということだ。
何故覚えておきたいかというと、「Full GC」が頻繁に起こるとプログラム処理時間に影響があるから、とだけ書いておきたい。詳しく知りたい方は上記リンクを参照されたい。
次に可変区画方式について、だが、ググった結果を色々見ていると非常に端的に表現してくれているサイトを見つけた。
京都産業大学 大本教授?の平成14年度システムソフトウェア講義資料の「第7章 記憶管理」である。
おそらくは講義に使用するためにパワーポイント的にまとめた資料だと思われるが、非常に端的にかつ的確に要点をまとめてくれているのでわかりやすい。初めて開いた時は何かの冗談かバグかと思ったぐらいだが・・・
で、可変区画方式というのは、メモリを使う場合にプログラムが必要な分量だけ使う方式、ということになるが、もっと言うとプログラムが必要とするメモリのサイズはプログラムによって違うため、どれだけのサイズを指定するか?という問題が出てくる。
この割り当て方法について、プログラムがどのくらい使用するかは「しらんっ これだけ用意したからこれ使えっ( ゚Д゚)」と指定する方式を「固定区画方式」、
「ここに必要な分の領域があるからここを使ってねぇ(*´▽`*)」と指定する方式を「可変区画方式」というらしい。
他のページも時間があるときに(できればサイトがなくならないうちに)見てみたいが、他に試験で使うような内容を書いてくれているサイトもあったので紹介しておきたい。
it-資格.jpというサイトさんの「実記憶管理」である。
どうやら基本情報か応用情報資格試験用のサイトのようで、関連する用語をまとめてくれてはいる、が、全てが有益か?全てがわかりやすいか?という点では疑問がある。
次に、動的リンキングなのだが、この用語についてはなかなかピンポイントで「それが何を意味するか」という答えが出てこなかった。
ググった結果の多くは試験を受ける人を対象にしたもので、非常にざっくりと用語を説明してくれているだけである。
そこで見つけたのは「基本情報処理技術者になってください」というサイトさんの「動的リンキング」というページである。
このサイトさんはおそらく実際に何かのプログラムを作っているような人が書いているサイトなのか、非常にゆるーく、且つわかりやすく実際に怒っているだろうと思われることを例示して書いてくれている。
ただ、書かれている内容がゆるすぎる感じもあったので、英語でも検索してみた。
そこで見つけたのは「Computer Science from the Bottom Up」というサイトさんの「Chapter 9. Dynamic Linking」というページである。
転載させていただくと、
******************************
Each executable contains a reference essentially saying "I need library foo". When the program is loaded, it is up to the system to either check if some other program has already loaded the code for library foo into memory, and thus share it by mapping pages into the executable for that physical memory, or otherwise load the library into memory for the executable.
******************************
ざっくり訳すと
******************************
実行ファイル(プログラム)は「こんなライブラリが必要だよぉ」と言う情報だけ持っていて、そのプログラムが実行されるときにシステム(OS)側が他のプログラムが同じライブラリをメモリ上にロードして(呼び出して)いるかどうかをチェックし、あればその場所をプログラムに教えなければメモリにロードするということをする。
******************************
ということである。(だいぶ意訳しているので疑わしい場合は自分で訳してほしい。)
そして最後に「動的再配置」だが、これも同じくしっかりとした説明を探すのが難しかった。色々とブラウジングしてここで(全部は当然理解できなかったものの)ある程度納得のいく説明を見つけることができた。
宮城教育大学、(なんの授業かはわからないが)「授業のページ」より「オペレーティングシステム第5-2章 主記憶の管理-2-」
このページ中、「5.8 動的再配置機能を用いるマルチプログラミング」という項目があり、内容を抜粋すると
******************************
メモリフラグメンテーション問題を解決するには、空き領域を結合してーつの連続した大きな空き領域にすればよい。それには、実行中のプロセスをメモリ内で移動させる必要がある。この処理を、メモリコンパクション、この機能を動的再配置機能という。****(中略)****この動的再配置機能によって、プロセスをメモリにロードするための領域の動的作成、削除、拡大、縮小によって生ずるメモリフラグメンテーションを解決できる。
******************************
そろそろ疲れてきたのでフラグメンテーションについては割愛させてもらうが、メモリのフラグメンテーションが発生した場合に、領域を効率的に使うために利用されるのが動的再配置と呼ばれる機能ということになる。
可変区画方式ではメモリが充分に空いている場所を指定してプログラムを配置するため、フラグメンテーションが発生する。このような場合にメモリを有効利用するため実行中のプログラムが利用しているメモリを別の場所に移動することでメモリの利用率を向上させようというものらしい。
ここまで調べて改めて問題を読み返してみると、「ア.ウ.エ.」については明らかに説明している文章と用語が一致していないのがわかる。。。
というか今日の俺は頑張ったっ( ゚Д゚)
Labels:
応用情報処理技術者試験
2017年3月7日火曜日
トレーニング日誌 2017/3/6~
一連の記事で行っている実験のまとめはこちらのページ、生活実験:トレーニングを参照ください。
ざっくりまとめると忙しい中で一日30分のトレーニングと食事制限で体脂肪を落とせるのか?という実験をやっています。
2017/3/6
体重:74.8kg
体脂肪率:20.9%
基礎代謝量:1648kcal
基礎代謝量:1648kcal
肉体年齢:38歳
シックスパックトレーナー Lv.15
※今日は珍しく海外と打ち合わせがあった。
生来声がでかいのもあるだろうが、英語でしゃべると決まってその後に「聞かなければならないのか?」と思うほど問われることがある。
「英語ぺらぺらですか?」
この問いはいついただいても非常に困る。
この問いを俺の頭の中で変換すると、「英語はネイティブ並みに話せますか?」ということになるのだが、聞いてる側からするとその辺の違いはあまり関係ないらしい。
生来声がでかいのもあるだろうが、英語でしゃべると決まってその後に「聞かなければならないのか?」と思うほど問われることがある。
「英語ぺらぺらですか?」
この問いはいついただいても非常に困る。
この問いを俺の頭の中で変換すると、「英語はネイティブ並みに話せますか?」ということになるのだが、聞いてる側からするとその辺の違いはあまり関係ないらしい。
多分英語が全く話せない日本人の人から俺がしゃべってるのを聞くと区別はつかないと思うが、わかる人には明らかに日本人だとわかるぐらいの違いがあるらしい。
これは昔、大学を卒業してから日本に英語講師をしに来ていた中国系アメリカ人(母国語:英語)の友達が言っていたことだが、まず母音の発音が微妙らしい。
それと、利用する単語や言い回しが少しネイティブに言わせると妙だということだ。
つまり、ネイティブ並みではないっ ⇒ ぺらぺらではないっ( ゚Д゚)
体重:74.7kg
体脂肪率:20.5%
基礎代謝量:1656kcal
基礎代謝量:1656kcal
肉体年齢:37歳
フレンチプレス(7.5kg) x25
ワンハンドローイング(7.5kg) x20
サイドレイズ+デッドリフト(7.5kg) x10
トライセプスエクステンション x10
トライセプスエクステンション x10
大胸筋アイソメトリック x2
※昨日は連日のストレスを言い訳にまたもや酒を飲んだ。が、やはり食べるものと塩分を調整すればそこまで大きな影響がないことは、ほぼ確信に変わってきた。
毎日ここに書くことはその日にある程度ネタを考えるのだが、仕事の、しかも愚痴ばかりなのでたまには趣向を変えてみようと思い、晩飯を写真に撮ってみた。
箸が二膳あるのは二人いるわけではなく、納豆のねばねば対策である。
左上がいつも話題に上がる鶏ゴボウサラダである。最近はほとんどマヨネーズを入れず(というかマヨネーズを入れる意味があまりなくなっているぐらいちょっとだけなのだが)、胡麻とレモン汁で味をつけている。
まだ摂取塩分まで計算できていないが、塩分を極力摂らないようにするためだ。
そして右下が高野豆腐を入れた味噌汁である。高野豆腐で一品作っても良いのだろうが、そこまで凝ってもそこまで食事に喜びを感じる方ではないので、味とかは二の次である。時間を優先するとこういう形になるのは当たり前である。
ちなみに最近は減塩味噌を使い、塩分無添加の出汁スティックを倍量入れることでこちらも塩分を少なくする対策を施してある。
前にも書いたが、米を入れないと不思議なことに食べてからそんなに時間をおかなくても深い眠りにつけることがわかっている。現段階では個人の感想に過ぎないが、血糖値が上がることが睡眠を妨げるのではないかと想像している。
毎日ここに書くことはその日にある程度ネタを考えるのだが、仕事の、しかも愚痴ばかりなのでたまには趣向を変えてみようと思い、晩飯を写真に撮ってみた。
箸が二膳あるのは二人いるわけではなく、納豆のねばねば対策である。
左上がいつも話題に上がる鶏ゴボウサラダである。最近はほとんどマヨネーズを入れず(というかマヨネーズを入れる意味があまりなくなっているぐらいちょっとだけなのだが)、胡麻とレモン汁で味をつけている。
まだ摂取塩分まで計算できていないが、塩分を極力摂らないようにするためだ。
そして右下が高野豆腐を入れた味噌汁である。高野豆腐で一品作っても良いのだろうが、そこまで凝ってもそこまで食事に喜びを感じる方ではないので、味とかは二の次である。時間を優先するとこういう形になるのは当たり前である。
ちなみに最近は減塩味噌を使い、塩分無添加の出汁スティックを倍量入れることでこちらも塩分を少なくする対策を施してある。
前にも書いたが、米を入れないと不思議なことに食べてからそんなに時間をおかなくても深い眠りにつけることがわかっている。現段階では個人の感想に過ぎないが、血糖値が上がることが睡眠を妨げるのではないかと想像している。
Labels:
生活実験
2017年3月6日月曜日
MIPS
平成28年秋季 問15. MIPS
問題文「オンライントランザクション処理システムにおいて、1分当たりの平均トランザクション数が1,200件であり、1件のトランザクション処理で100万命令を実行する場合、CPU性能が100MIPSのコンピュータを使用した時のCPUの平均利用率は何%か。」
解答群
ア. 5
イ. 10
ウ. 15
エ. 20
不正解だったので調査対象にしたのだが、改めて考えてみると非常に簡単な問題だった。
逆に、こういう問題こそ取りこぼしが無いようにしたいものだ。
まず、MIPSとは、
Million Instructions per second の略とのこと。これは問題文に「100万命令を実行」とあるので、知らなくてもなんの略なのかはわかりそうなものである。
しっかりと文章を読み解くと、まず
「1件のトランザクション処理で100万命令を実行」し、利用しているCPUが
「CPU性能が100MIPS」つまり100万命令を1秒で実行する
というところから、100件のトランザクションを1秒で処理できることがわかる。
ここまで書いてきて、解答が当たったけども根本的な間違いを犯していたことに気づいた。
1秒で1件の処理だから1,200件を60秒で割ると答えは「20」だっ( ゚Д゚)
大間違いである。
100MIPSはつまり、100×100万命令を1秒で実行する(Million = 1,000,000)なので、1分当たりの処理能力は60秒×100で6,000命令となる。
1,200/6,000は「0.2」となるので、20%が正解となる。
問題の要点としては100MIPSが「100×100万命令」であるところだ。
時間がない状態で考えると間違えやすい(英語・技術両面で恥ずかしい限りだが)問題なので、特に自分の肝に銘じておきたいと思う。
問題文「オンライントランザクション処理システムにおいて、1分当たりの平均トランザクション数が1,200件であり、1件のトランザクション処理で100万命令を実行する場合、CPU性能が100MIPSのコンピュータを使用した時のCPUの平均利用率は何%か。」
解答群
ア. 5
イ. 10
ウ. 15
エ. 20
不正解だったので調査対象にしたのだが、改めて考えてみると非常に簡単な問題だった。
逆に、こういう問題こそ取りこぼしが無いようにしたいものだ。
まず、MIPSとは、
Million Instructions per second の略とのこと。これは問題文に「100万命令を実行」とあるので、知らなくてもなんの略なのかはわかりそうなものである。
しっかりと文章を読み解くと、まず
「1件のトランザクション処理で100万命令を実行」し、利用しているCPUが
「CPU性能が100MIPS」つまり100万命令を1秒で実行する
というところから、100件のトランザクションを1秒で処理できることがわかる。
ここまで書いてきて、解答が当たったけども根本的な間違いを犯していたことに気づいた。
1秒で1件の処理だから1,200件を60秒で割ると答えは「20」だっ( ゚Д゚)
大間違いである。
100MIPSはつまり、100×100万命令を1秒で実行する(Million = 1,000,000)なので、1分当たりの処理能力は60秒×100で6,000命令となる。
1,200/6,000は「0.2」となるので、20%が正解となる。
問題の要点としては100MIPSが「100×100万命令」であるところだ。
時間がない状態で考えると間違えやすい(英語・技術両面で恥ずかしい限りだが)問題なので、特に自分の肝に銘じておきたいと思う。
Labels:
応用情報処理技術者試験
2017年3月5日日曜日
トレーニング日誌 2017/3/4~
一連の記事で行っている実験のまとめはこちらのページ、生活実験:トレーニングを参照ください。
ざっくりまとめると忙しい中で一日30分のトレーニングと食事制限で体脂肪を落とせるのか?という実験をやっています。
2017/3/4
体重:74.6kg
体脂肪率:19.9%
基礎代謝量:1664kcal
基礎代謝量:1664kcal
肉体年齢:36歳
シックスパックトレーナー Lv.15
※今日は出社時点で落ち着かない一日だった。
忙しかったか?と言われると気ぜわしいだけでムカつくだけの不健康な一日だと言ってみる。
ストレスがたまった日は、飲むべしってことで今酒を飲んでいる。
体脂肪率はついに20%を切る領域になったが、どうせ上がったり下がったりするだろう。その内恒常的に20%を切れるようにはなるだろうが、なんかあるたびに酒飲んでると遠のくばかりだ。
仕事の愚痴を書いても仕方がないのだが、1日で終わる分量を整理して割り振るような役割の人が派遣社員を雇う場合はあってしかるべきだ。
まあ金もらっているし働いた分はもらえるからあまり文句は言うまい。。。
忙しかったか?と言われると気ぜわしいだけでムカつくだけの不健康な一日だと言ってみる。
ストレスがたまった日は、飲むべしってことで今酒を飲んでいる。
体脂肪率はついに20%を切る領域になったが、どうせ上がったり下がったりするだろう。その内恒常的に20%を切れるようにはなるだろうが、なんかあるたびに酒飲んでると遠のくばかりだ。
仕事の愚痴を書いても仕方がないのだが、1日で終わる分量を整理して割り振るような役割の人が派遣社員を雇う場合はあってしかるべきだ。
まあ金もらっているし働いた分はもらえるからあまり文句は言うまい。。。
体重:74.8kg
体脂肪率:20.3%
基礎代謝量:1662kcal
基礎代謝量:1662kcal
肉体年齢:37歳
フレンチプレス(7.5kg) x25
ワンハンドローイング(7.5kg) x20
サイドレイズ+デッドリフト(7.5kg) x10
トライセプスエクステンション x10
トライセプスエクステンション x10
大胸筋アイソメトリック x2
※今日は昨日と打って変わって静かな一日。
人それぞれ色んな悩みがあるもんだ。
しかし俺は18歳以降、精神的に歳を取っている気がしていない、というのが普通だと思っていたら20代にして40歳まで年老いてしまっている人がいるらしい。
そのまま年取ってしまったら60歳で80歳になってしまうではないかっ( ゚Д゚)
いや、違うな・・・
精神年齢が2倍の速度で40代までに年老いているわけだから・・・ Y=2X で60歳までに120歳になれる計算になれるわけだ・・・
すごいな・・・前人未踏まで歳を取るがよいっ( ゚Д゚)
人それぞれ色んな悩みがあるもんだ。
しかし俺は18歳以降、精神的に歳を取っている気がしていない、というのが普通だと思っていたら20代にして40歳まで年老いてしまっている人がいるらしい。
そのまま年取ってしまったら60歳で80歳になってしまうではないかっ( ゚Д゚)
いや、違うな・・・
精神年齢が2倍の速度で40代までに年老いているわけだから・・・ Y=2X で60歳までに120歳になれる計算になれるわけだ・・・
すごいな・・・前人未踏まで歳を取るがよいっ( ゚Д゚)
Labels:
生活実験
登録:
投稿 (Atom)