2017年3月30日木曜日

SOAP、CORBA、DCOM、SIP

平成28年秋季 問35. SOAP、CORBA、DCOM、SIP

問題文「ほかのコンピュータ上にあるデータやサービスを呼び出すためのプロトコルで、メッセージ記述がXMLのヘッダとボディで構成されているものはどれか。」

解答群
ア. CORBA
イ. DCOM
ウ. SIP
エ. SOAP

この問題もまずもって全くわからない。まあ、記憶に残るように勉強しているわけなので、少しずつ調べてみようと思う。

まず、CORBAはCommon Object Request  Broker Architectureの略だそうで、いくつかサイトを見たもののそもそも実際にプログラムを書くような人でないと完全な理解はできそうになさそうである。

その中で、「達人プログラマーを目指して」さんの「CORBA関連のJava技術について」の中でおそらく現場のプログラマさんが感じている率直な感想を書いていたので参考にしてみた。

「インターフェースを決めておけば言語によらずにサービスを実装できるということから、信頼できる枯れたCORBAの実装が利用できるのであれば、必ずしもWebサービスなどに置き換えるよりもよいというケースも一応存在すると思います。」

CORBAの基本的な概念としてはプログラムコードをカプセル化することで色々な他のプログラムから呼び出せるようにした規格なのだそうで、色々な言語(C、C++、JavaはもとよりPythonまで)からカプセル化されたプログラムを呼び出して使うことができるようにするらしい。

ここまで書くとなんだか古いプログラムもカプセル化してしまえばすごく便利なように聞こえるが、インターネットが普及してブラウザから色々なサービスの提供を受けられるようになった今、あえてこの技術を選択しなくてもいいのでは?みたいなことらしい。

一例としては富士通さんの「CORBA概要」というPDFファイルがあって、これを見ると細かなところは置いておいても何となく理解できたような気になれる。この例ではCOBOLをCORBAを利用して連携できるようにするということが書かれているが、COBOLなどの古い言語を新しい言語から呼び出したりするのに実用的なんだと理解した。

クラウドや仮想化技術にしても、いかに古い技術を活かすかという観点から考えると営業的な意味合いでどうやって古くなったIT資産を転用し、お金に変えるか(営業する側からみた視点だが・・・)という意味でひねり出されたアイディアとも言えると思うので、そのようなアイディアで昔作られたものなんだろうな、ぐらいでよさそうである。

では次にDCOMは、Weblio辞書さんの「DCOM」にざっくり書かれていて、簡単に言うとCOMという技術をネットワーク越しに使えるようにした技術だということだ。ちなみに「Distributed Component Object Model」の略だそうだ。
COMというのはWindowsを利用しているとそこかしこにちらほら出てくる用語だが、調べてみてもいまいちピンとはこなかった。が、まあMicrosoftが開発したソフトウェア基盤の一種だということで納めて置いた方がよさそうだ。何しろこの辺の技術は掘り下げるとどこまでも深くなっていく。

ということで適当にウェブサイトを閲覧していたところ、DCOMに関して面白そうな記事を見つけた。

「Geekなぺーじ」さんの「DCOM(分散COM)を無効にする」というページである。ここを見るとWindows XPの時代からあった技術らしく、上に書いたようにWindows環境にあるCOMをネットワーク越しに使えるというこの便利機能が、ウィルスの踏み台にされることもあり、Windows Updateが行われていないマシンだと「インターネットに接続しているだけで」感染させられてしまうらしい。

どこにいっても便利な技術っていうのはなんらかの落とし穴を持っているらしい。。。

次に進みたい。SIPは「Session Initiation Protocol」の略で、探すと「戦略的イノベーション創造プログラム」とか言う他の言葉まで出てくるのでWikipediaさん情報のみから読み解くと「Session Initiation Protocol」に書かれている通りオーディオなどの通信を制御するH.323というプロトコルに代わるセッション制御プロトコルなのだそうだが、現在はインターネット上の会議など、電話やチャット、テレビ電話などによく使われている双方向通信を行うもののようだ。

ざっくり概要だけ見ると、サーバとクライアント間の通信のように主従関係のようなものが持ちにくい通信、つまり電話などのやり取りの中で通信を行う双方がサーバとクライアントの両方の役割を担えるような仕組みということだそうだ。

あまり面白くもないのであまり掘り下げずにさっさと次に行こう。最後にSOAPについて調べて今日も終わりにしたい。もう疲れてきてソープと聞くだけで大人なサービスしか思い浮かばない。

@ITさんの「SOAP(Simple Object Access Protocol)」というページの記述をまとめると、ネットワーク経由でオブジェクト間の通信を行うプロトコルでXMLを使っているのが特徴ということだ。

「エンベロープ」「ヘッダ」「ボディ」の領域で構成されていて、ファイアウォールで通過しにくい組織間の環境を超えて通信するのに役立つと書かれているのは非常に有益な方法のように聞こえる。

そして、最重要な項目としては「W3C」の宣言でSOAPは何かの略ではなくなり、固有名詞であるということになったということである。何故最重要か?という点だが、これを知っている技術者たちは一様に大人なサービスのSOAPとの二つの固有名詞であると心の底では絶対に思っていると断言できるからだ。

モルダー、あなた疲れてるのよ。と言われそうなので今日はここまでにしたい。

2017年3月29日水曜日

トレーニング日誌 2017/3/28~

一連の記事で行っている実験のまとめはこちらのページ、生活実験:トレーニングを参照ください。

ざっくりまとめると忙しい中で一日30分と週1回のウェイトトレーニング、食事制限で体脂肪を落とせるのか?という実験をやっています。

2017/3/28
体重:74.4kg
体脂肪率:21.4%
基礎代謝量:1630kcal
肉体年齢:39歳

シックスパックトレーナー Lv.15
※体重の下降が止まり、安定してきているように見える。これが筋肉が増えて体脂肪が減っているのであれば良いが、体脂肪がほぼ一定している事実から考えるとあまり望みはないのだろうか。。。



2017/3/29
体重:73.1kg
体脂肪率:18.7%
基礎代謝量:1653kcal
肉体年齢:34歳
ベンチプレス (70kg)x10 (60kg)x10 (55kg)x10x2 (50kg)x10x2
チンニング(61kg)x10 (54kg)x10 (47kg)x10x2 (40kg)x10x2
ダンベルショルダープレス(18kg)x10 (16kg)x6 (14kg)x6 (12kg)x6
サイドレイズ(14kg)x10 (12kg)x10 (10kg)x10x2 (8kg)x10x2
ワンハンドローイング(18kg)x10 (16kg)x10x2 (14kg)x10x3 (12kg)x10x3
ダンベルカール(14kg)x6 (12kg)x6 (10kg)x6 (8kg)x6
デッドリフト左右各(37kg)x10x3

※昨日はいつもは休み前日に酒を飲むのだが、我慢してウェイトトレーニングに行った。前回行った時に体脂肪含めた測定をしてくれるサービスがあるが、トレーニング後はあまり正確な値にならないと言われたためで今回計測してみようと思っていたからである。

窓口で数百円払って計測時間は大体5分かからない程度、手で電極を握って計測する形である。

結果は以下のようである。
体重:74.2kg
体脂肪: 21.5%
BMI: 26.0kg/m2

さらに部位別の筋肉量が調べられるようで
右腕: 3.69kg
左腕: 3.51kg
体幹: 27.6kg
右脚: 8.44kg
左足: 8.36kg
となっている。

わかりにくいのだが、腕と体幹は体重から見た筋肉発達程度という項目でいずれも115%を超えているようで、脚に関しては100%ちょっとと言ったところらしい。

測ってくれた人は何かにびっくりしていたらしいが、何がびっくりさせていたのかは不明だ。ただ、筋肉量がどうやら多いらしいのだけはわかった。

で、せっかく5分のために結構な金額払ったので、体脂肪率を落とす簡単な方法を聞いてみた。
それは2点あって、1点目は大腿筋を鍛えて有酸素運動をすること、2点目は腹回りの脂肪については直接的な刺激が一番効くということだ。

腹回りの直接的な刺激?と聞き返したところ、女性のエステのように直接もみほぐすことが腹回りの脂肪を分解するには一番効果的とのこと。なるほど。。。エステにもそれなりの実証効果があるんだな・・・と感心した。

1点目の大腿筋を鍛えて有酸素運動というのはある程度想像がつく。大腿筋は体の中では一番大きい筋肉になるので、そこを鍛えてから有酸素運動、特にランニングやサイクリングマシンなどは脂肪燃焼に効果が大きいだろう。

ということで前からも考えていたのだが、デッドリフトという項目を今回から加えてみた。デッドリフトについてはダンベルトレーニングでサイドレイズ+デッドリフトと書いているので聞き覚えがあるかもしれないが、実際に俺がダンベルトレーニングでやっているのは適当に名前をつけているものなので、本当のデッドリフトではない。

しかも、俺がデッドリフトと言っているのは、ラグビーをやっていた頃の監督に教えてもらったもので少し一般的に言われるものと少し違う。実を言うと、一般的なデッドリフトを今日の今まで知らなかった。

俺が今まで考えていたデッドリフトはバーベルのバーをまたいで行うものだ。姿勢の維持が異常に難しい(左右の姿勢が変わるため、一般的に言われるデッドリフトでも言われる腰にかかる負荷をしっかりと腰で支えるのが難しくなる)が、効果はこのトレーニングを行った1年上の先輩の背筋力が200kgを優に超えていたことで分かる。

たった50kg、左右10回x3セットを半年しただけ(ほぼ毎日)でそれである。効果は計り知れない。

しかし、今日トレーニングをした感じだと2時間(ジムの1回券の時間)では有効な有酸素運動は難しそうである。ウェイトトレーニングに1時間10分ぐらい費やしてしまうので有酸素運動に割ける時間は30分か40分ぐらいである。

さらに普段のダンベルトレーニングに大腿筋トレーニングを取り入れるのはなかなか難しそうでもある。色々と課題があるが、一番は・・・

最近になって体重の減少が止まってしまっているのが気になっていたが、色々と見てみたところやはりアルコール摂取が体脂肪と体重に影響を与えているように思えてきた。

確かに摂取カロリーと直接的な関係を1日スパンで見るとそれほど認めにくいが摂取カロリーの平均値で見た場合、2500kcalを平均して摂取しているように見え、確かに短期スパンでは影響がないように見えるものの、摂取カロリーは長期的に影響があるようにも見えるからだ。

ただ、酒と美味しいと思えるものを断てるほど俺の精神状態は日常的にはそれほど良好とは言えないので、別の方法を考えた。

休みの日の夕食はそのままにして、日中はそれほどストレスも飢餓感も感じないので「紅葉饅頭」でギリギリ空腹にならないところを攻めてみようということだ。

そこで、今日の晩飯はこれである。



その代わり、今日の日中口にしたのは紅葉饅頭4個である。これで二日間で摂取するカロリーをかなり抑えられる ⇒ 酒を飲んでも無問題 という解決方法である。

最後に測定してくれたトレーナーの人に「トレーニングの目的は何かあるのですか?」と聞かれたので、「ウニ採りでケツが浮くから」と答えるとなんとも言えない笑顔が帰ってきた。

ちなみに今日の体重測定は入浴後なのであまり参考にならない。

NAPT、IPスプーフィング、IPマルチキャスト、NTP

平成28年秋季 問34. NAPT、IPスプーフィング、IPマルチキャスト、NTP

問題文「TCP、UDPのポート番号を識別し、プライベートIPアドレスとグローバルIPアドレス殿対応関係を管理することによって、プライベートIPアドレスを使用するLAN上の複数の端末が、一つのグローバルIPアドレスを共有してインターネットにアクセスする仕組みはどれか。」

解答群
ア. IPスプーフィング
イ. IPマルチキャスト
ウ. NAPT
エ. NTP

はっきり何一つわからない問題ではある、が、今回改めてNATに似てるんじゃね?と思ってNAPTを選択したら当たってしまったw

ポート番号の内容を除けば、NATがそのものずばりの解答だからである。しかしNATはずいぶん前に研修で出てきただけだし、その時研修してくださった方もネットワークのスペシャリストではなかったので、もう一度確認していきたい。

まずはNATで検索すると最近おなじみになってきた「ネットワークエンジニアとして」さんのページ「NAT (Network Address Translation)」にCISCOの用語の説明も含めて詳述してくれている。が、NATそのものは「ローカルIPをグローバルIPに変換する技術」とするだけでよいだろうと思う。

ではNATを踏まえてNAPTを見てみよう。「IPラーニング - サイバーエリアリサーチ」さんの「1.2.4 NAT・NAPTとIPアドレス」のページでは、NATを含めたNAPTの説明をしてくれている。

使っている画像もほのぼのできる感じで好ましいのが印象的である。

説明もほぼ完ぺきに目的を果たしてくれているので、ここで説明する必要もないかもしれないが、あえて簡単に略させてもらうと「NATではローカルIPとグローバルIPが1:1の関係で保たれるため、仮にローカル二つの端末から同じグローバルIPへの要求が行われた場合対応させることが難しくなってしまう。そのため、ローカルに任意のポート番号を割り振って(おそらくNAPTが実装されている機器側の話と想像する)グローバルから指定されたポート番号によって送信先ローカルIPを識別する技術」ということになる。

全然略されてねえ・・・orz

内容はある程度わかったが、グーグル先生のアブストラクトに気になる内容を見つけて、おなじみ「@IT」さんの「NAPT」も参照してみた。

気になった点は2つ、「1.TCP/UDPのポート番号も含めて変換することで、複数の端末を同時接続させる・・・」ということと、「2.LinuxにおけるNAPTの実装をIPマスカレードと呼ぶ。」ということだ。

同時接続させるという点については問題文になりやすい言い回しのようなので押さえておいた方がよさそうなのと、NAPT一つを覚えるのではなく、IPマスカレードという単語も一緒に覚えて置けるので一石二鳥と言える。

では他の選択肢について簡単に見ていってみよう。

IPスプーフィングについては不正アクセスという内容だからかWikipediaさんの説明「IPスプーフィング」を通してみるととても分かりやすかった。
英単語の「Spoof」が「なりすます」という意味であることを合わせて、IPアドレスを偽装する不正アクセスの手法とまとめてしまうとわかりやすいかもしれない。

特にDoS攻撃(対象のアクセス要求を送り付けて動作不能状態を作り出そうとする攻撃)の場合は送り付けるだけの動作のためIPアドレスが偽装されていると発信元が特定できないことも合わせて非常に効果的かつ防御不能の攻撃となり得るらしい。

続けて「IPマルチキャスト」だが、こちらについては既に自サイトの「アドレスクラス」のマルチキャストアドレスの項目で取り扱っているのでこちらを参照されたい。

最後にNTPだが、最初NPTを検索して核不拡散条約がヒットしてちょっとびっくりしたものの「Network Time Protocol」の略で、内容はWikipediaさんの「Network Time Protocol」に詳述されている。

至極簡単にまとめると、「時計を正しい時刻に同期する際、通信することによる時間の補正(要求と時刻データの送信そのものにかかる時間を計算に入れるという意味で)を行う時刻同期のためのプロトコルである、ということだ。

よし、今日も筋トレ頑張ろうっ( ゚Д゚)

2017年3月27日月曜日

トレーニング日誌 2017/3/26~

一連の記事で行っている実験のまとめはこちらのページ、生活実験:トレーニングを参照ください。

ざっくりまとめると忙しい中で一日30分のトレーニングと食事制限で体脂肪を落とせるのか?という実験をやっています。

2017/3/26
体重:74.0kg
体脂肪率:21.1%
基礎代謝量:1626kcal
肉体年齢:38歳

シックスパックトレーナー Lv.15
※最近「効き」が悪くなってきたので、パッド?を交換した。今回から新しく「8パックストレーナー」という新しい形のものにした。


画像の右側がそれなのだが、これで「6Pad」のパクリではなくオリジナルに・・・なるかっ( ゚Д゚)
まあ、バッタもんには違いないのだが、それでもコストパフォーマンスが高ければそれはそれでよいのではないかとも思う。
できれば「6Pad」も購入して全体的なパフォーマンスを比較してみたいが、いつになるかわからない。。。
今日は酒を飲んで寝よう。



2017/3/27
体重:74.5kg
体脂肪率:21.4%
基礎代謝量:1632kcal
肉体年齢:39歳
フレンチプレス(10kg) x20
ワンハンドローイング(10kg) x15
ダンベルカール(10kg) x15
サイドレイズ+デッドリフト(10kg) x10
トライセプスエクステンション(10kg) x10
大胸筋アイソメトリック x2

※最近は休み以外の日に飲むときはかなり食事も制限しているつもりなのだが、今回は500g増になった。就寝がだいぶ遅くなってしまったのが影響しているのか、睡眠時間も大きな要素となるようにも思う。

ただし、前回ウェイトトレーニングしてからかなり筋肉量が増えているように感じるので、この点も考慮にいれるべきか・・・という点で悩んでいる。
正直多少オーバーワーク気味な間隔でトレーニングしているので来週からは理想的なサイクルに持っていけるのではないかと考えているが、それまでの間は今のペースを乱したくないのも正直なところだ。

理想的なサイクルとしては、ウェイトトレーニングして翌日完全休、腹筋を翌日にしてからその翌日にダンベルトレーニング、後は腹筋とダンベルを交互に行う、というサイクルにしたいところである。他のスケジュール(試験勉強含む)を見ながら調整していこうと思う。

2017年3月26日日曜日

アドレスクラス

平成28年秋季 問33. アドレスクラス

問題文「IPアドレス208.77.188.166は、どのアドレスに該当するか。」

解答群
ア. グローバルアドレス
イ. プライベートアドレス
ウ. ブロードキャストアドレス
エ. マルチキャストアドレス

ざっくりとだが、ウ.エ.は特定のアドレスになるのではないか?ということで対象から外し、プライベートアドレスは先頭が10.xxxとか192.xxxとか特定のものになるはずだからという単純な理由で正解したが、細かく見ていきたいと思い調査範囲にした。

まず「応用情報処理技術者試験ドットコム」さんの解説を基に、クラスによってプライベートアドレスの先頭部分が決まっているという点について見ていきたい。

「プライベートアドレス」「クラス」という文字列で検索したトップに「@IT」さんのページ「プライベートIPアドレス」がヒットした。いつもお世話になっております(*´▽`*)

このサイトさんの抜粋によると、以下のようになっているらしい
クラスA: 10.0.0.0~10.255.255.255(10.0.0.0/8
クラスB: 172.16.0.0~172.31.255.255(172.16.0.0/12
クラスC: 192.168.0.0~192.168.255.255(192.168.0.0/16

つまり、上記のアドレスの範囲に当てはまればプライベートネットワークと言えるし、それ以外ならグローバルアドレスであると考えてよさそうである。

上の対応表の中で、赤字で記されている部分についてはサブネットマスクの記述方式で、よりわかりやすく書くと以下のようになる:
クラスA:255.0.0.0
クラスB:255.240.0.0
クラスC:255.255.0.0

これは初めてみると面食らう表現だと思う。実際俺も初めて見た時には意味がわからなかった。
簡単にまとめると、「2bit表記した時の上位?ビットまでがサブネットですよ」と書いているわけで、「サブネットマスク」「表記」でグーグル検索するとトップに表示される、やはり「@IT」さんの「IPアドレスとサブネットマスクをまとめて表記する」に詳しくまとめられている。

しかしここで余計な疑問が出てくる。クラスBでは255.240.0.0となっているはずなのに「172.16.0.0~172.31.255.255」と「16~32(便宜上)」に絞られているのは何故だろうか?

「240」をビット変換すると「11110000」で、「16」は「00010000」、「32」は「00100000」となる。

この部分で「172.16.xxx.xxx」を表現すると
10101100.00010000.xxxxxxxx.xxxxxxxx」で赤字で表現されている部分までが12桁(2進数)なので、それ以降はプライベートに割り振ってよい数字となる。

当然、第2オクテットが「32」になると桁が上がってしまい12桁までの固定が崩れてしまう「10101100.00100000.xxxxxxxx.xxxxxxxx」ので、桁が上がる寸前の「172.31.255.255」までが範囲になるというわけだ。

というか。。。途中で切るなっ( ゚Д゚)
で、なんで172であり、192であるのか?と思って調べてみたが、簡単には結論が出てこなかったため、それぞれをビット変換して並べてみた。

クラスA:00001010
クラスB:10101100
クラスC:11000000

想像に過ぎないが、人間の目で見てわかりやすいから・・・とかいう理由ではなかろうか。。。いや、あくまで想像に過ぎないのは過ぎないのだが・・・

次にブロードキャストアドレスとはなにか?だが、簡単にウィキペディアの参照だけにしたい。「ブロードキャストアドレス」を簡単にまとめると、サブネットマスク以外のビットを全て「1」にした状態「192.168.255.255(クラスCを例にして)」は「そのプライベートアドレスに接続されている全ての端末に対する発信としよう」と決めた(提唱した)人がいるからである。
詳細は上記サイトを見てもらいたいが、確かにそのような必要があった場合に便利だろうとは思う。なぜかは割愛させていただく。

次にマルチキャストアドレスだが、色々探したところ「ネットワークのおべんきょしませんか?」さんの「マルチキャストってなに?マルチキャストの場合」にすごくわかりやすく説明されている。

詳細は疲れてきたので上記サイトに内容を譲りたいが、簡単に言うとグループ化をすることで「特定の複数」の端末に対してデータを送信することができるようにするアドレスだということらしい。

ついでにこのサイトさんでは非常に有益な情報が得られる「IPアドレスには、クラスA~Eがあって、クラスA~Cは普通に使うユニキャスト用のIPアドレス、クラスDがマルチキャスト用、クラスEが実験目的で予約されています。(引用:同上)」とある。

ちなみにこのクラスDアドレス先頭部分は
クラスD:11100000
となっており、やはり先頭からの1のビットの数でクラスを決めている⇒わかりやすい というもののようだ。

上記サイトさんをざっくりと眺めてみたところによると、非常にネットワークのことに関してわかりやすく書いておいでなので、時間があれば見てみたいサイトではある(時間ができるかは別問題である)。

今日は疲れたので以上にしたい。

2017年3月25日土曜日

トレーニング日誌 2017/3/24~

一連の記事で行っている実験のまとめはこちらのページ、生活実験:トレーニングを参照ください。

ざっくりまとめると忙しい中で一日30分のトレーニングと食事制限で体脂肪を落とせるのか?という実験をやっています。

2017/3/24
体重:74.7kg
体脂肪率:21.1%
基礎代謝量:1643kcal
肉体年齢:38歳

シックスパックトレーナー Lv.15
※今日、いつもここを見てくれている仕事の同僚に「いつも酒を飲むときは言い訳をしているように見える」的なことを言われた。なので、今日は飲みますがなにか?( ̄ー ̄)
ウェイトトレーニングをして、やはり筋肉痛になったのはなった。2日後に来なかったのはありがたいが、明日、今日以上に痛かったら悲しい思いをすることになるだろう。

しかし今日目についたのは基礎代謝量がここ数日の推移から見ると劇的に上昇していることだ。うちのタニタちゃんは俺の日頃の変化には鈍感なはずなのだが、意外とここに反応するとは思わなかった。



2017/3/25
体重:74.2kg
体脂肪率:21.4%
基礎代謝量:1624kcal
肉体年齢:39歳
フレンチプレス(10kg) x20
ワンハンドローイング(10kg) x15
ダンベルカール(10kg) x15
サイドレイズ+デッドリフト(10kg) x10
トライセプスエクステンション(10kg) x10
大胸筋アイソメトリック x2

※今日は昨日よりも筋肉痛はやわらいでいた。筋肉痛は残っていたのでダンベルトレーニングするか迷ったが、48時間以上経過しているので追い込んでみた。

一回大幅に体重が増えたかに見えたが、あっという間に元に戻ったのは筋肉量が増えたからだろうか。トレーニング後に鏡で体を見ると、さすがに今まで見たことないぐらい体が膨らんできている。やはり1週間に1回程度のウェイトトレーニングは正解だと思う。

しかし体脂肪の前に筋肉で体が重くなりすぎて海に沈んでしまうのではないかと心配になってきている。まあウニ採りは今年だけではないので今年失敗していたら来年に照準を合わせるだけのことだと開き直ってみよう。

2017年3月24日金曜日

ネットワークプロトコル

平成28年秋季 問32. ネットワークプロトコル

問題文「TCP/IPネットワークにおけるARPの説明として、適切なものはどれか。」

解答群
ア. IPアドレスからMACアドレスを得るプロトコルである。
イ. IPネットワークにおける誤り制御のためのプロトコルである。
ウ. ゲートウェイ間のホップ数によって経路を制御するプロトコルである。
エ. 端末に対して動的にIPアドレスを割り当てるためのプロトコルである。

この問題は確か結構な頻度で過去問題に出ていて、覚えていた問題である。ただ、前回は急いでいたのでさっくり内容だけ把握していたので、今回調査対象にしてみた。
また、答えがわかっても結局は他の選択肢の問題だった場合は正答できないので、他の選択肢も把握したかったのもある。

まず、ARPだが、グーグル先生に聞くとすぐに出てきた。
「ネットワークエンジニアとして」さんの「TCP/IP - ARP
このページではARPリクエストとARPリプライ、それからRAPT(Reverse Address Resolution Protocol)について説明していて、さっくりARP(Address Resolution Protocol)とは「IPアドレスからEthernetのMACアドレスの情報を得られるプロトコルです。」と書いてくれている。

確かコマンドプロンプトでこのプロトコルを使ってIPアドレスを取得した記憶がある。たまにであるが、プリンタのMACアドレスを参照してIPアドレスを固定にしたいときなどに、プリンタの液晶には表示されなかったりする場合役に立ったように記憶している。

使うことはあまりないと思うが、それについてはよくお世話になっている「@IT」さんの「WindowsのARPコマンドで通信先を特定するーMACレベルでの通信相手の特定方法ー」などを見ると使い方が書いているようだ。

仕事で使うことはあまりないのと、確かかなり狭い範囲でしか使えないように記憶しているので、実用性はそこまで無いようにも思う。

では次に、というかチートっぽいが解答群のイ.TCP、ウ.RIP、エ.DHCPについて見ていきたい。

まずはTCP(Transmission Control Protocol)だが、ざっくり理解するのは以下の二つのサイトさんを見ると良いように思う。

「ネットワークエンジニアとして」さんの「TCP/IP - TCP」というページと「e-Words」さんの「TCP」というページである。

何故二つ合わせて紹介したかというと、「ネットワークエンジニアとして」さんのページではTCPの説明をざっくりと説明してすぐにポート番号の説明をしているが、「何をするプロトコルか?」については説明していないのに対して、「e-Words」さんはポート番号の説明は置いておいて、TCPについて役割などを説明してくれているからだ。

また、「ネットワークエンジニアとして」さんについてはUDPとの比較もしてくれているのでそこはありがたい点である。

書かれていることをざっくりとまとめると、IPがIPアドレスを指定して送信先のマシンを特定するのに対し、TCPはポート番号からどのアプリケーションに対して送信を行うかということと、通信相手の状況確認と接続の確立・切断や、送受信が確実に行われたか、データの欠落や破損を検知して再送したり、順番どおりに並べ替えを行ったりという制御を行ってくれるのだそうだ。

上記の2つのサイトさんはおそらく、基本的な知識がある程度備わっていることを前提に書かれているので端折られている部分もあるのだと思うので、より具体的な内容について知りたい人は「パソコン初心者講座」さんの「TCP/IPプロトコルとは?」を参照すると良いのではないかと思う。ざっくりとしか見ていないが、とても良くまとまっていて、且つわかりやすいものになっていると思う。

次にRIP(Routing Information Protocol)は、急いでいる時の強い味方「e-Words」さんの「RIPv1/v2」に「ルータなどの通信機器の間で経路情報を交換し、ある地点から別の地点までの最短経路を割り出す・・・」と書かれている。

もっと踏み込んだ内容については、「@IT」さんの「IPルーティング入門(1)」、「ルーティング・プロトコルの役割を理解する」を読むと良いように思う。わからない単語を飛ばしながら読んでも非常に興味深い内容になっていると思う。

DHCPについては応用情報を受けようとする人なら触れる機会が多いんじゃないかと思うので割愛させてもらう(そこまで時間を割けないというのが理由だがw)

2017年3月23日木曜日

トレーニング日誌 2017/3/22~

一連の記事で行っている実験のまとめはこちらのページ、生活実験:トレーニングを参照ください。

ざっくりまとめると忙しい中で一日30分のトレーニングと食事制限で体脂肪を落とせるのか?という実験をやっています。

2017/3/22
体重:73.7kg
体脂肪率:20.5%
基礎代謝量:1630kcal
肉体年齢:37歳

シックスパックトレーナー Lv.15
※休みの日で、保育園に行ってアップルデニッシュをいただいた。
今回は毎年行っているマスタの追加・更新作業。年間行事を登録するのだが、ほとんど時間はかからない。
で、明日、以前から同僚が通っているというジムに行ってベンチプレスのコツを教えるという話をしていたので、初回のオリエンテーションのついでにウェイトトレーニングをしようと思いついた。
しかし久しぶりなのと、ボディビルダーのサイトなどを見た感じだとある程度事前に栄養を取りこんでいた方がよさそうだったので、今日は久しぶりにカロリー計算しない日にしてみた。

それで、今日の食事風景が以下の写真である。


左上からえびふりゃー、ステーキ475g、ニンニクのシソ漬け、2段目に行ってトマトとブロッコリースプラウトのサラダ、鶏皮の茹でたもの、差し入れの鶏肉とブロッコリーのホワイトソース煮?、3段目に行ってポテトサラダ、サーモンの刺身155g、そして山盛りのサニーレタスである。
酒はビール500ccと赤ワイン。2500円ぐらいのものだが、最近の食事制限でお金を使わないので贅沢してみた。
いつもは焼酎のお湯割りだが、今日はポリフェノールがよさそうだという自分でもなんだかわからない理由で赤ワインというチョイスに落ち着いた。

当然一日で食える量ではないので、ステーキだけは全部食べるようにして、残りは翌日のトレーニング後に食べるように考えている。



2017/3/23
体重:75.2kg
体脂肪率:21.2%
基礎代謝量:1652kcal
肉体年齢:38歳

ベンチプレス(80kg)x3 (70kg)x10 (60kg)x10 (55kg)x10x2 (50kg)x10x2
チンニング(60kgくらい)x10 (53kgくらい)x10 (47kgくらい)x10x2 (40kgくらい)x10x2
ダンベルショルダープレス(18kg)x10 (16kg)x10 (14kg)x10 (12kg)x10
サイドレイズ(14kg)x10 (12kg)x10 (10kg)x10x2 (8kg)x10x2
ワンハンドローイング(18kg)x10 (16kg)x10x2 (14kg)x10x2 (12kg)x10x2
ダンベルカール(12kg)x10 (10kg)x10x2 (8kg)x10x2

※今回は書き留めるものを持っていかなかったのでかなり適当に「このぐらいやったかなぁ?」ぐらいで書いてみている。当然、しっかり時間が取れたので10秒ルールは解除して負荷を思い通りにかけてみた。

ベンチプレスが久々すぎたのでどのくらい上がるものかと思っていたが、そこまではあげられなくて少しショックではある。

ラグビーをやっていた頃からだが、ざっくりと一番重い負荷から順に下げていく方法を取っている。
隣でやっていた若い男性3人は徐々に上げていく方法をやっていたが、重い重量を2・3回ずつぐらいやっていたみたいだった。
80kgぐらいをやっていたように見えたが、いずれも体形は細かった。確かに重量を上げられるようになると多少の満足感もあると思うが、実際に体を大きくしていくつもりなら重量を上げられるようになること以上に回数を行うことを意識しないと体はそこまで大きくはならないと思う。
まあ目的があってのことかもしれないし、俺の知ったことではないのだがw

かなり栄養価の高い食事を前日とトレーニング後に摂ったのである程度空腹にはならないと思うが、今後はどの程度まで食事を絞って且つ、効果を最大限に保つようにするかが課題にはなってくると思う。

しかし・・・かなり久々のウェイトトレーニングだったので筋肉痛がひどいことになりそうではある。が、やはり若いおねえたまが周りにいるとやる気も全然違ってくるという意味では週1回程度ジムに行くのはとても良さそうである。

2017年3月20日月曜日

トレーニング日誌 2017/3/19~

一連の記事で行っている実験のまとめはこちらのページ、生活実験:トレーニングを参照ください。

ざっくりまとめると忙しい中で一日30分のトレーニングと食事制限で体脂肪を落とせるのか?という実験をやっています。

2017/3/19
体重:73.7kg
体脂肪率:20.5%
基礎代謝量:1630kcal
肉体年齢:37歳

シックスパックトレーナー Lv.15
※今日、職場にあったクッキーの箱を見て耐え切れなくなり、ドーナツを1個食った。
何か体脂肪との闘いではなくなって、ドーナツの戦いになってきている体(てい)の我ブログである。
それで、気になって炭水化物とウェイトトレーニングについて検索してみたが、結局は賛否両論のようである。
簡単にまとめるとトレーニング直後は特に炭水化物を摂取することによるインスリンを使って筋肉に必要な栄養素(アミノ酸)を送り込むのに必要だと言っている人達と、炭水化物や糖分の摂取がトレーニングによって促進された成長ホルモンを阻害するというものだ。
また、筋トレ直後にプロテインのみ摂った検体と炭水化物を含めた検体グループを比較したところ、筋肉量の増加は前者の方が高かったという論文もあるというのが根拠になっているそうだ。

まあ、結果からすると「まったくわかっていない」というのが正しいところなのだと思うが、自分の実感からすると筋トレ直後はほとんど炭水化物を摂らなくても異常な空腹感には襲われないということと、どうやらトレーニング翌日の朝食から昼食の間に、炭水化物を異常に欲する時間帯があるということである。

さらに、ドーナツ2個を食べると食べ過ぎのようだが、1個だと少し足りない感じだということで、体がシグナルとして欲している炭水化物量は42.6gから85.2gの間なのではないかと思われることと、以前塩分のコントロールで朝食に塩分摂取が少なすぎると空腹感が現れるという点も加味すべきなように思われる。

今は毎食食べている味噌汁の塩分を半分にカットして塩分全体の摂取量を減らし、朝食にシソ昆布を10g食べて朝食とそれ以外の食事の塩分量をコントロールしているが、この塩分量と炭水化物量を調節して様子を見てみたい。



2017/3/20
体重:73.8kg
体脂肪率:21.1%
基礎代謝量:1620kcal
肉体年齢:38歳
フレンチプレス(10kg) x20
ワンハンドローイング(10kg) x15
ダンベルカール(10kg) x15
サイドレイズ+デッドリフト(10kg) x10
トライセプスエクステンション(10kg) x10
大胸筋アイソメトリック x2

※ドーナツ食ってない今日の方が体重が増えている・・・ まあ100gは誤差だし、今日は仕事が早かったのとあまり睡眠を取っていないからかもしれないが・・・ 体重の増減は一日では全く理解ができない。
で、今日は酒が飲みたくなったので飲んでいる。なぜかダンベルを行って酒を飲んだ翌日はそこまで腹が減らない。
栄養のほぼないカロリーだけで何か影響があるのだろうか?それともステーキ400g前後が効いているのか?ちなみに今日は600gだが何か・・・?
しったことかっ( ゚Д゚)

2017年3月19日日曜日

ANSI/SPARC3層スキーマ

平成28年秋季 問26. ANSI/SPARC3層スキーマ

問題文「データベースの3層スキーマ構造に関する記述のうち、適切なものはどれか。」

解答群
ア. 概念スキーマはデータの物理的関係を表現する。
イ. 外部スキーマは、データの利用者からの見方を表現する。
ウ. 内部スキーマは、データの論理的関係を表現する。
エ. 物理スキーマは、データの物理的関係を表現する。

例によって初めて聞く言葉なので、ある程度グーグル先生に聞いて出てきた内容をいくつか見てみる。

さくっと内容を見て、わかるような気になるのが不思議なものだが、いくつかのページをつなぎ合わせて考えるとまとめないとわからない部分もあるようだ。

まず、一般的な説明としては「technotype.net」さんの「ANSI/SPARC3層アーキテクチャ」がほぼほぼ一般的な考え方について述べてくれている。

それぞれの層の説明としては、非常にわかりやすいのだがそれぞれの関係性についてはいまいち判然としていないことに愕然としつつ・・・ 次に進むと

やはり良くお世話になっている「ITpro」さんの「すぐわかるデータベースの基礎(4)」で、それぞれの層の位置関係を示してくれている。ここで驚きだったのは、説明文からの想像とは違って、外部スキーマ⇒概念スキーマ⇒内部スキーマという構造だったことだ。

さらに他のサイトを見てみると、意外なこと(?)に基本情報処理のサイトさんの図が一番端的に内容を伝えてくれたということだ(基本情報だからと言って馬鹿にしているわけではない)。
「徹底研究!情報処理試験」さんの「[0319]3層スキーマ」にある図では、それぞれの層が実際のDB上の何に当たるかをさりげなく教えてくれている。

そしてそしてっ! じゃあなんでそんな構造に分けているのか?という点について、端的に書いてくれているのが「ばかなたにのあほブログ」さんの「ANSI/SPARC3層スキーマアーキテクチャ」というページである。
それぞれの層の独立性を確保するという目的である、とはっきりと述べてくれている。

ここまで読んでようやく全体のパーツがそろった気がするので、改めてまとめさせていただくと以下のようになる。

ANSI/SPARC3層スキーマアーキテクチャとは

概要

American National Standards Instituteというアメリカの協会の、Standards Planning and Requirements Comitteeという委員会によって提唱された規格。

目的

論理的・物理的データの独立性を確保するために提唱された。

内容

外部スキーマ: アプリケーションやユーザ視点から見た場合の層で、DB上では「View」などに相当する。
概念スキーマ: 実世界の実体や実体間の関係を表現したもので、全体を概念的に記述した層。DB上では「Table」などに相当する。
内部スキーマ: データベースを物理的に格納するレベルの層。DB上では「インデックス」や「データファイルの配置」などに相当する。

実際には完全な独立性の確保は難しいらしい(実際にDBの管理などしたことがないのでわからないw)が、それでもこのような記述をされた資料は確かに多いようなので実社会でも使われているように思われる(DBの仕様書は関連が難しすぎて正直わからなすぎる)。

トレーニング日誌 2017/3/17~

一連の記事で行っている実験のまとめはこちらのページ、生活実験:トレーニングを参照ください。

ざっくりまとめると忙しい中で一日30分のトレーニングと食事制限で体脂肪を落とせるのか?という実験をやっています。

2017/3/17
体重:73.9kg
体脂肪率:20.7%
基礎代謝量:1637kcal
肉体年齢:38歳

シックスパックトレーナー Lv.15
※ドーナツ2個食ってやった、ら、一日吐き気に近い感覚を味わう。
それで帰ってから酒を飲んでやった。特に理由はない。飲みたかったからだ。
ステーキを280g。ついでにステーキにかける塩コショウがどのくらいになるかを調べると、0.2gの少量という意外な結果に驚いた。
そうやって考えると欧米人の平均塩分摂取は5gとか書いてあったように思うので、意外と塩分だけ見るとステーキは健康的な食物なのかとも思う。



2017/3/18
体重:73.9kg
体脂肪率:20.7%
基礎代謝量:1639kcal
肉体年齢:39歳
フレンチプレス(10kg) x15
ワンハンドローイング(10kg) x15
ダンベルカール(10kg) x15
サイドレイズ+デッドリフト(10kg) x10
トライセプスエクステンション(10kg) x10
大胸筋アイソメトリック x2

※今日からダンベルの負荷を10kgに変えてみた。応用情報の試験が終わったら追い込みにかかるつもりなので、今から10kgに負荷を変え、試験終了後は週に1回ジムに行こうかと考えている。
体脂肪率は相変わらずだが、最近腕の血管が少しずつ上腕に向けて浮き上がってきている。
明らかに体格が変わってきているのがわかるとやる気も出てくるというものだ。

2017年3月17日金曜日

SMIL他

平成28年秋季 問23. 論理演算

問題文「動画や音声などのマルチメディアコンテンツのレイアウトや再生のタイミングをXMLフォーマットで記述するためのW3C勧告はどれか。」

解答群
ア. Ajax
イ. CSS
ウ. SMIL
エ. SVG

いきなり「なんじゃこりゃっ( ゚Д゚)」という問題である。かろうじてわかる用語としては「XML」と「CSS」ぐらいである。

-W3C勧告-

まずは「W3C勧告」とは何か?について調べてみた。

LIG inc.さんの「HTML5がW3Cの勧告になるとは?Web技術の標準規格について」は「W3C」と「勧告」の意味を分かりやすくまとめてくれている。

「W3C」とは「World Wide Web Consortium」の略で、JISやISOのWeb技術版と書いても問題なさそうである。

「勧告」とは何か?というと複数段階の改訂を経て、最終的な文書(これ以上修正が必要ないほど練り上げられたという意味で)が作成された、ということらしい。

-SMIL-

で、チート臭いが答えのSMILを見てみよう。

まずはおなじみ@ITさんのXML用語辞典「SMIL(Synchronized Multimedia Integration Language)」より、

***********************************
SMILは、XMLによって作られたマルチメディア記述用の言語である。時間に関するコントロールやスクリーン上のプレゼンテーションのレイアウトなどを行うことを目的としたものである
***********************************

俺ぐらいHTMLを少しかじっただけの人でも、このページにあるサンプルコードを見るとなんとなくどういうことかがわかると思うので数多い用語解説から選ばせてもらった。

俺の環境にはReal Playerを入れていないので実行してみることはできなかったが、5秒間のDurationで画像を切り替えていくということをしているらしいことがわかる(ソースを書くとページがわやになりそうだったので見たい人は上のリンクから見てもらいたい)。

SMILについて、どのように実装していくかについてはReal networksさんの「第6章SMILハイパーリンク」を参照すると良いと思う。

ななめ読みするだけでどんなことができるかがわかるように思う。

ちなみにこの「SMIL」、「スマイル」と読むらしい。 笑ってんじゃねえっ(#゚Д゚)ゴルァ!!

-Ajax-

ではAjaxはなんだろう? 以前聞いたことがあるように思うのだがITの用語は略しすぎていて覚えられない。

いつもお世話になっている@ITさんの「いまさら聞けない、”Ajax"とは何なのか?」がグーグル先生のトップに来た。とても分かりやすくどんな内容なのかを説明してくれている。ここを読めば完璧だっ( ゚Д゚)

とは言え、それだけだと単なる紹介記事になってしまうので、簡単にまとめさせていただくと、

まず、Ajaxは「Asynchronous JavaScript + XML」、訳すと「非同期JavaScript+XML」である。。。 ほとんど訳すところがなかったorz

Ajaxが一躍有名になったのは、今では本当になじみの深いGoogle Mapsの表示方法なのだそうだ。Google Mapsで地図を見る時、マウスのスクロールホイールで縮尺したりドラッグすることで移動でき、現在見えているところから詳細を見たり、そのまま横に移動できたりする。

ここで行われている処理が「非同期:Asynchronous」だということだ。必要な部分の情報だけをServerからもらって表示し、且つ表示しながらもさらに先に進むことができるのが、必ずしも情報を常に同期していなくてもできる技術、というのがそれを指しているらしい。

で、Ajaxは何なのか?と言うと、実際にはインストールして使ったりするものではなく、JavaScriptとXMLの技術を使った単なる手法(単なるというのは語弊があるかもしれないが、提唱した本人もアプローチだと言っているようだ)ということである。

最終的にあっさりまとめると、Google Mapsのようにぐりぐり動かせるように見えるWebの技術はAjaxが使われているよ、と言えそうである。

次にCSSだが、これはHTMLを少しでもかじったことがある人ならすぐにわかるだろう。「Cascading Style Sheets」の略である。

ここは簡単にサイトを紹介させてもらうと
udemyメディアさんの「CSSとは?これを読めば初心者でも必ずCSSが書ける!」では、実際にHTMLとCSSをテキストエディタで書きながらどういうものかを説明してくれている。
ヨッセンスさんの「[初心者]CSSってなに?という質問にWEB歴10年の人が全力で答えてみる」では用語がわかりにくいと言う人用に簡単な用語とたとえ話で解説してくれている。

これもあっさりまとめてしまうと、いちいちHTMLのタグ(要素)ごとに色やフォントを書き込んでいるとどこで何を使っていたかわからなくなるので、ひとまとめにタグの表示方法を書いてしまう方法である。

-SVG-

最後に「SVG」だが、これは久しぶりにWikipediaで解説してくれた人がとても良くまとめてくれている。

Wikipedia「Scalable Vector Graphics

間違えやすいのは、これもW3C勧告だということだ。ではSMILと何か違うか?というと、SVGは2次元画像の描画形式のことだ、ということだ。

これを理解するには同じくWikipediaの「ベクタ形式」を見る必要があるかもしれない。ビットマップと対比して画像を見せてくれているので、それを見るとビビッドに理解ができると思う。

ここであまり時間を割きたくないので、ここは上の解説で勘弁してもらえると有り難い。

トレーニング日誌 2017/3/15~

一連の記事で行っている実験のまとめはこちらのページ、生活実験:トレーニングを参照ください。

ざっくりまとめると忙しい中で一日30分のトレーニングと食事制限で体脂肪を落とせるのか?という実験をやっています。

2017/3/15
体重:73.9kg
体脂肪率:20.7%
基礎代謝量:1639kcal
肉体年齢:38歳

シックスパックトレーナー Lv.15
※帰って酒を飲んだ。久しぶりにチキンナゲットを食ったが、醤油マヨネーズが異常に辛く感じるようになっていた。ずいぶんと体質が変わっているようだ。

・・・・ ・・・・かゆ・・・うま・・・



2017/3/16
体重:73.8kg
体脂肪率:21.5%
基礎代謝量:1612kcal
肉体年齢:39歳
フレンチプレス(7.5kg) x25
ワンハンドローイング(7.5kg) x20
ダンベルカール(7.5kg) x15
サイドレイズ+デッドリフト(7.5kg) x10
トライセプスエクステンション x10
大胸筋アイソメトリック x2

※今月はシフト勤務の都合で昨日まで五連勤、明日から五連勤だ。
最近は酒を飲む回数が減っているからか、もしくは新しい職場の水が合っているのかそこまで疲労感を感じない。
しかし体脂肪率は本当に意味がわからない。筋肉が増えて脂肪が減っているのに一向に体脂肪率は変わらない。
結局は足の裏などに微弱な電流を流して抵抗の多寡で体脂肪率を推定しているにすぎないので、よくよく考えたら湿度に大きな影響を受けてしまうのではないかと推測している。
では、今の技術なら部屋の湿度を測定して、それを加味して測定値を見直せば相当精度があがるのではないかと思うのは素人考えなんだろうと思う。
世の中色々難しい。

2017年3月15日水曜日

論理回路

平成28年秋季 問23. 論理演算

問題文「次の条件を満足する論理回路はどれか。」


〔条件〕
階段の上下にあるスイッチA又はBで、一つの照明を点灯・消灯する。すなわち、一方のスイッチの状態にかかわらず、他方のスイッチで照明を点灯・消灯できる。



解答群
ア. AND
イ. NAND
ウ. NOR
エ. XOR

これは論理演算の基礎の基礎なので、復習の意味も込めて調査対象にしてみた。
だが、久しぶりに論理演算の問題を見て、「OR」演算が含まれるどちらかだっ( ゚Д゚) と、本能的に思ったがどっちがどっちかがよく思い出せなかった。

論理演算をグーグル先生に聞いてみると、以下の2つのサイトがとてもまとまっていてわかりやすかったので紹介する。

RENESASさんの今さら聞けない「論理回路」、「①デジタルとは、基本論理回路

こちらのサイトでは基本論理回路は3種類だと書いてある。「AND」「OR」「NOT」の3種類だとのことだ。

もう一つのサイトはIT proさんの「【5分で覚えるIT基礎の基礎】あなたは論理演算がわかりますか?第1回

今回の問題を解くのに必要な知識は、IT proさんのサイトの文中にある「●真理値表の覚え方は簡単」の項目で十二分に得られる。転記するのは書いた人に対して失礼にあたるので、実際にサイトを見ていただきたい。

こちらのサイトでは論理演算には4種類、「AND」「OR」「XOR」「NOT」だとのことだ。おそらく、細かな部分で「XOR」を含めるか否かが決まっているのだろうと予想する。

RENESASさんのサイトはIC回路についてかなり細かく書いてくれているので、今後時間ができたら読んでみたいと思う。

IT proさんのサイトは応用情報の問題を進めていくとおそらくここで詳述してくれている内容が役に立つと思うので、こちらは論理演算にからむ部分で今後お世話になると思う。

2進数と論理演算は本当にコンピュータの基本の部分なので、いつかは完全にものにしたいと思う。が、今は直近に迫った試験に集中したいと思う。

2017年3月14日火曜日

トレーニング日誌 2017/3/13~

一連の記事で行っている実験のまとめはこちらのページ、生活実験:トレーニングを参照ください。

ざっくりまとめると忙しい中で一日30分のトレーニングと食事制限で体脂肪を落とせるのか?という実験をやっています。

2017/3/13
体重:74.3kg
体脂肪率:20.6%
基礎代謝量:1644kcal
肉体年齢:37歳

シックスパックトレーナー Lv.15
※会社の同僚の人に、「筋肉を太くするにはどうすればよいか?」という相談を受けて、一回だけ腕立て30回を10セットするといいのではないかと思うと最近答えた。

これはあまり系統だった根拠がないのだが、その昔、高校の時の体育の先生がボディビルダーで、一番初めの授業が上の腕立ての方法で1時間丸々使うというものだったのが根拠である。

進学校だったためあまり本気でトレーニングをしていた人もいなかったが、中学から運動をした友人皆がこのトレーニング後、急激に体が大きくなる早さが変わったという感想を漏らしていた。

で、その方法を紹介した同僚の人が実際に4時間(!)かけて腕立てをしてくれたと話してくれたので、ついでに体をできれば3日間程休ませてほしいとお願いした。

体を休ませるのには根拠があって、筋肉が回復するには少なくとも24時間を必要とすると聞いたことがあるからだ。

ただ、それだけではあまりにもあやふやすぎるのでちょっと調べてみた。

筋トレぴろっきーさんのブログ「筋肉が落ちる・減る理由6選!細い筋肉が嫌なら痩せる・細くなる原因を明確に!より「筋肉が落ちる・減る理由④ オーバートレーニング」という項目がとても詳しく内容を書いてくれている。

簡単に言うとトレーニングを行うと筋肉がある程度分解され、それを回復する時に前よりも大きくなっていくのだが、回復が間に合わない状態でトレーニングを続けると分解が回復よりも多くなるため細くなってしまう、ということだ。

これは実際に荷揚げをやっていて色んな人を見て思ったのだが、毎日のように体を酷使する荷揚げ屋さんは一部の例外を除いて体が細かった。体脂肪が少なくなっているのも見た目を細くする要因だったと思うが、実際に筋肉が非常に固く細くなっていたのだ。

びっくりするほど重い荷物を持てる人でも、見た目上の筋肉は俺よりも細い人が多かった。なので、「重いものが持てる」 = 「筋肉が太い」というのは当てはまらない。



2017/3/14
体重:74.0kg
体脂肪率:21.3%
基礎代謝量:1622kcal
肉体年齢:38歳
フレンチプレス(7.5kg) x25
ワンハンドローイング(7.5kg) x20
ダンベルカール(7.5kg) x15
サイドレイズ+デッドリフト(7.5kg) x10
トライセプスエクステンション x10
大胸筋アイソメトリック x2

※最近鏡を見ていることが多くなった。確かに自分のことは好きだが、それだけが理由ではない(と、言ってみる)。

実感としては体が少しずつだがしまってきているように思うのだが、体重や体脂肪率の推移を見てもほとんど変わっていないからだ。

確かに体重は開始直後の12月末から見ると2kg減っているが、2kgって別に大したことないと思えば思えるし、体脂肪率に至っては開始直後21.8%から現在21.3%とほぼ変化なしなのだ。

だがっ( ゚Д゚) 確かに変わっているっ( ゚Д゚)

そこで、1月末と2月末の不定期身体測定の写真を見比べてみた。

1月末の前から


2月末の前から

前から見ると、確かにぜい肉のでっぱりはあるが・・・へ・・・へこんどる・・・

1月末の横から


2月末の横から


横からみると・・・腹筋の形が見えてきとる・・・

よしっ 満足だ。。。 勉強しよう(*´▽`*)

2017年3月13日月曜日

標本化周波数

平成28年秋季 問22. 標本化周波数

問題文「音声を標本化周波数10kHz、量子化ビット数16ビットで4秒間サンプリングして音声データを取得した。この音声データを、圧縮率1/4のADPCMを用いて圧縮したデータ量は何kバイトか。ここで、1kバイトは1,000バイトとする。」


解答群
ア. 10
イ. 20
ウ. 80
エ. 160

はっきり言って全く用語がわからないため、応用情報技術者試験ドットコムさんの解説を見ても全然わからなかった。

そこで、まずは用語の1つ目を検索・・・と、ほとんどの用語が開設されたサイトさんを発見した。

Soraoto Webサイトさんの「サンプリング周波数と量子化ビット」というページである。

ここを見ればほぼ完ぺきに音声をデジタルデータ変換する方法について解説してくれている。

しかしだ、ここを見れっ( ゚Д゚) と書くだけでは全く俺がこのページを書いている意味がなくなるので、さらに意訳して解説すると以下のようになる。

標本化周波数 ⇒ 1秒間にどのくらいの数のデータを取るか。丁度テレビのコマ数(15フレーム毎秒)のように、1秒間に15回データ(ここで言うサンプル/標本)を録るならば15Hzとなるらしい。

量子化ビット数 ⇒ 標本化周波数が1秒間に何回サンプルを録るか?を表しているならば、量子化ビット数は1回のサンプルで何段階の音として記録するか?ということらしい。

ここで本気で訳がわからないのが、標本化周波数は音の高さを表現しているらしく、量子化ビット数は音の大きさを表していることであるが、時間を短く区切って何故に音の高さを表現できるのだろうか?

上の疑問を考え始めると長くなるのと、まあ上の例だけで問題は解けそうなので後日の課題として残したまま問題を解きたいと思う。

標本化周波数は10kHz、量子化ビット数16ビットなので、1秒間に10,000個の16ビットのデータがある、ということになる。

それを4秒間取得したわけだから、640,000ビットのデータがあるわけだ。

これを圧縮率1/4のADPCMを用いて・・・

なんでも略すのいくないっ( ゚Д゚)

ADPCMとはAdaptive Differential Pulse Code Modulationの略だそうだ。そして、PCMというのがPulse Code Modulationの略で、上の標本化周波数と量子化ビットを使ったアナログ信号のデジタル化を指しているらしい。

じゃあ、AD(Adaptive Differential)の部分はなんだ?という話だが、どうやら「自然界の音は連続していることが多いので、前のタイミングとの差をデータ化することで圧縮する技術」と言う風に見える。(出典:e-Words「ADPCM」より)

つまりその技術を使って4分の1に圧縮するということだ。

なので、640,000ビットのデータを4分の1に圧縮するので、データ量は160,000ビットとなる。設問は「何kバイトか?」を問うているので

160,000÷8÷1,000=20(kByte)

これで問題は解けるのは解けるが・・・ 一体周波数と時間の関係って・・・?
高校の時の物理を真剣に勉強しておくべきだった・・・orz

2017年3月12日日曜日

トレーニング日誌 2017/3/11~

一連の記事で行っている実験のまとめはこちらのページ、生活実験:トレーニングを参照ください。

ざっくりまとめると忙しい中で一日30分のトレーニングと食事制限で体脂肪を落とせるのか?という実験をやっています。

2017/3/11
体重:74.0kg
体脂肪率:20.7%
基礎代謝量:1633kcal
肉体年齢:38歳

シックスパックトレーナー Lv.15
※カロリー計算のエクセルファイルを更新し、とりあえず体脂肪と塩分の記録ができるようにしてみた。だが、一番大変なのはメニューごとに塩分を調べることだろうと思う。
我が家で使っている醤油は加藤味噌醤油さんで売っている吟上醤油という奴で、これはうちの実家近くで出回っているというか多分、故郷近くの醤油を独占しているであろう醤油である。

塩分が通常16%ぐらいのところを12%程度に抑え、濃厚な味でこれでないと刺身を食いたくないぐらいなのだが、何しろ田舎のお店なので商売が下手なのか「アミノ酸液」を投入していると書いてしまっているのがほほえましいのだが、「昔ながらの作り方」とあるのでアミノ酸液も実は手作りなのだろうと思われる(保証はしない)。

で、以前この醸造元の社長さんと話す機会があって、醤油の拡販について聞いたところ「結局は食べてみて口に合うかどうか」と、達観した回答が返ってきたのが非常に興味深かった。

話は逸れてしまったが塩分を調べるのは意外と大変だ。それぞれの食品に記載していればいいのだが、そうでないケースも多いし、一番塩分の多いと思われる醤油や味噌は使う分量が一定していない(目分量で入れてしまう)ため、今後はグラム数を調べて使う必要が出てきてしまう。

塩分コントロールは想像以上に茨の道である。



2017/3/12
体重:74.2kg
体脂肪率:21.1%
基礎代謝量:1633kcal
肉体年齢:38歳
フレンチプレス(7.5kg) x25
ワンハンドローイング(7.5kg) x20
ダンベルカール(7.5kg) x15
サイドレイズ+デッドリフト(7.5kg) x10
トライセプスエクステンション x10
大胸筋アイソメトリック x2

※今日はドーナツ食ってやった
以上っ( ゚Д゚)

ウソである。

今日色々同僚と話していて気がついたのだが、どうやら睡眠不足が続くと糖分が欲しくなるらしい。
『寝不足で甘いものが食べたくなる』のは脳の前頭前皮質の働き!

それで酔っ払いながらブラウジングしてたら意外なものを見つけた:
眠れない負のスパイラル!睡眠不足の人の糖分過剰摂取が明らかに

確かに夕食に糖質を抑えると眠りが深くなるような気がしたのは意味があったのかと少しびっくりした。

しかしである、「甘いものを食って太る仲間が欲しいから」って言う理由でドーナツ発言を繰り返すなっ( ゚Д゚)
お前だお前っ( ゚Д゚)

2017年3月11日土曜日

ラウンドロビン方式

平成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試験ドットコム」では俺の解釈で間違いないようだ、が、解説がほとんどないためよくわからない。

ここはどちらも正解だが、同じような問題が出た時、俺は俺のやり方で行こうと思う。何故か?俺は俺を含めて誰も信じないが、どちらも信用できないならば俺のが正しいと思うからだっ( ゚Д゚)

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の遊休時間ということになる。

もう一つ注意が必要なのは、問題が「最も早く処理が終わる時間」を聞いていないという点だ。このような問題は問いの内容によって答えが変わってくるので注意が必要だと思う。簡単に手書きで答えが導き出せるようにするのが必要だと思う。

2017年3月10日金曜日

トレーニング日誌 2017/3/8~

一連の記事で行っている実験のまとめはこちらのページ、生活実験:トレーニングを参照ください。

ざっくりまとめると忙しい中で一日30分のトレーニングと食事制限で体脂肪を落とせるのか?という実験をやっています。

2017/3/8
体重:74.9kg
体脂肪率:21.2%
基礎代謝量:1646kcal
肉体年齢:38歳

シックスパックトレーナー Lv.15
※特にコメントはない。




2017/3/9
体重:74.8kg
体脂肪率:22.3%
基礎代謝量:1620kcal
肉体年齢:40歳
フレンチプレス(7.5kg) x25
ワンハンドローイング(7.5kg) x20
ダンベルカール(7.5kg) x15
サイドレイズ+デッドリフト(7.5kg) x10
トライセプスエクステンション x10
大胸筋アイソメトリック x2

※昨日確かに酒を飲んだ。ステーキも500gぐらい食った。しかし体重もほとんど変わっていないのに体脂肪率22.3%とはなんだっ( ゚Д゚)
うちのタニタちゃんはご機嫌斜めらしい。
実感としては最近かなりぜい肉が落ちてきているように思う。だが、体重の落ちは止まっている。筋肉がついているのだろうと前向きに捉えたいが、実際のところはどうなんだろうか。。。。

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 動的再配置機能を用いるマルチプログラミング」という項目があり、内容を抜粋すると
******************************
メモリフラグメンテーション問題を解決するには、空き領域を結合してーつの連続した大きな空き領域にすればよい。それには、実行中のプロセスをメモリ内で移動させる必要がある。この処理を、メモリコンパクション、この機能を動的再配置機能という。****(中略)****この動的再配置機能によって、プロセスをメモリにロードするための領域の動的作成、削除、拡大、縮小によって生ずるメモリフラグメンテーションを解決できる。
******************************
そろそろ疲れてきたのでフラグメンテーションについては割愛させてもらうが、メモリのフラグメンテーションが発生した場合に、領域を効率的に使うために利用されるのが動的再配置と呼ばれる機能ということになる。

可変区画方式ではメモリが充分に空いている場所を指定してプログラムを配置するため、フラグメンテーションが発生する。このような場合にメモリを有効利用するため実行中のプログラムが利用しているメモリを別の場所に移動することでメモリの利用率を向上させようというものらしい。

ここまで調べて改めて問題を読み返してみると、「ア.ウ.エ.」については明らかに説明している文章と用語が一致していないのがわかる。。。

というか今日の俺は頑張ったっ( ゚Д゚)

2017年3月7日火曜日

トレーニング日誌 2017/3/6~

一連の記事で行っている実験のまとめはこちらのページ、生活実験:トレーニングを参照ください。

ざっくりまとめると忙しい中で一日30分のトレーニングと食事制限で体脂肪を落とせるのか?という実験をやっています。

2017/3/6
体重:74.8kg
体脂肪率:20.9%
基礎代謝量:1648kcal
肉体年齢:38歳

シックスパックトレーナー Lv.15
※今日は珍しく海外と打ち合わせがあった。
生来声がでかいのもあるだろうが、英語でしゃべると決まってその後に「聞かなければならないのか?」と思うほど問われることがある。
「英語ぺらぺらですか?」
この問いはいついただいても非常に困る。
この問いを俺の頭の中で変換すると、「英語はネイティブ並みに話せますか?」ということになるのだが、聞いてる側からするとその辺の違いはあまり関係ないらしい。
そういう問い合わせについては決まって、「意思疎通には問題ないぐらいですが、ぺらぺらではないです」と答えている。
多分英語が全く話せない日本人の人から俺がしゃべってるのを聞くと区別はつかないと思うが、わかる人には明らかに日本人だとわかるぐらいの違いがあるらしい。

これは昔、大学を卒業してから日本に英語講師をしに来ていた中国系アメリカ人(母国語:英語)の友達が言っていたことだが、まず母音の発音が微妙らしい。
それと、利用する単語や言い回しが少しネイティブに言わせると妙だということだ。

つまり、ネイティブ並みではないっ ⇒ ぺらぺらではないっ( ゚Д゚)



2017/3/7
体重:74.7kg
体脂肪率:20.5%
基礎代謝量:1656kcal
肉体年齢:37歳
フレンチプレス(7.5kg) x25
ワンハンドローイング(7.5kg) x20
ダンベルカール(7.5kg) x15
サイドレイズ+デッドリフト(7.5kg) x10
トライセプスエクステンション x10
大胸筋アイソメトリック x2

※昨日は連日のストレスを言い訳にまたもや酒を飲んだ。が、やはり食べるものと塩分を調整すればそこまで大きな影響がないことは、ほぼ確信に変わってきた。

毎日ここに書くことはその日にある程度ネタを考えるのだが、仕事の、しかも愚痴ばかりなのでたまには趣向を変えてみようと思い、晩飯を写真に撮ってみた。

箸が二膳あるのは二人いるわけではなく、納豆のねばねば対策である。
左上がいつも話題に上がる鶏ゴボウサラダである。最近はほとんどマヨネーズを入れず(というかマヨネーズを入れる意味があまりなくなっているぐらいちょっとだけなのだが)、胡麻とレモン汁で味をつけている。
まだ摂取塩分まで計算できていないが、塩分を極力摂らないようにするためだ。

そして右下が高野豆腐を入れた味噌汁である。高野豆腐で一品作っても良いのだろうが、そこまで凝ってもそこまで食事に喜びを感じる方ではないので、味とかは二の次である。時間を優先するとこういう形になるのは当たり前である。
ちなみに最近は減塩味噌を使い、塩分無添加の出汁スティックを倍量入れることでこちらも塩分を少なくする対策を施してある。

前にも書いたが、米を入れないと不思議なことに食べてからそんなに時間をおかなくても深い眠りにつけることがわかっている。現段階では個人の感想に過ぎないが、血糖値が上がることが睡眠を妨げるのではないかと想像している。

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万命令」であるところだ。
時間がない状態で考えると間違えやすい(英語・技術両面で恥ずかしい限りだが)問題なので、特に自分の肝に銘じておきたいと思う。

2017年3月5日日曜日

トレーニング日誌 2017/3/4~

一連の記事で行っている実験のまとめはこちらのページ、生活実験:トレーニングを参照ください。

ざっくりまとめると忙しい中で一日30分のトレーニングと食事制限で体脂肪を落とせるのか?という実験をやっています。

2017/3/4
体重:74.6kg
体脂肪率:19.9%
基礎代謝量:1664kcal
肉体年齢:36歳

シックスパックトレーナー Lv.15
※今日は出社時点で落ち着かない一日だった。
忙しかったか?と言われると気ぜわしいだけでムカつくだけの不健康な一日だと言ってみる。
ストレスがたまった日は、飲むべしってことで今酒を飲んでいる。
体脂肪率はついに20%を切る領域になったが、どうせ上がったり下がったりするだろう。その内恒常的に20%を切れるようにはなるだろうが、なんかあるたびに酒飲んでると遠のくばかりだ。
仕事の愚痴を書いても仕方がないのだが、1日で終わる分量を整理して割り振るような役割の人が派遣社員を雇う場合はあってしかるべきだ。
まあ金もらっているし働いた分はもらえるからあまり文句は言うまい。。。



2017/3/5
体重:74.8kg
体脂肪率:20.3%
基礎代謝量:1662kcal
肉体年齢:37歳
フレンチプレス(7.5kg) x25
ワンハンドローイング(7.5kg) x20
ダンベルカール(7.5kg) x15
サイドレイズ+デッドリフト(7.5kg) x10
トライセプスエクステンション x10
大胸筋アイソメトリック x2

※今日は昨日と打って変わって静かな一日。
人それぞれ色んな悩みがあるもんだ。
しかし俺は18歳以降、精神的に歳を取っている気がしていない、というのが普通だと思っていたら20代にして40歳まで年老いてしまっている人がいるらしい。
そのまま年取ってしまったら60歳で80歳になってしまうではないかっ( ゚Д゚)

いや、違うな・・・
精神年齢が2倍の速度で40代までに年老いているわけだから・・・ Y=2X で60歳までに120歳になれる計算になれるわけだ・・・
すごいな・・・前人未踏まで歳を取るがよいっ( ゚Д゚)