山口屋~活動日誌~

私生活で主な出来事をピックアップ

研究室に2泊しました

2007-10-26 11:58:30 | 勉強
卒業研究の中間発表に追い込まれて、23日、24日と、研究室に2泊もしてしまい、昨晩は久しぶりに家で寝ることができた。

不健康ではあるけれど、夜間の研究室は、誰もいないしパソコンは何台も使えるしで、作業環境は昼間よりもだいぶ良いです。

基本情報技術者試験終了

2007-10-21 23:11:51 | 資格・就職
基本情報技術者試験が終わりました。

サークルのイベントを休んで受けるだけに、絶対「合格」したいと思っていました。最後は問題集を2夜で100ページ解くという無謀な勉強になってしまいましたが、公表された解答を見て自己採点してみたら、「合格」のようです。

正式な発表は11月14日(水)とまだ先ですが、ひとまず無事に終わりました。

基本情報技術者試験

2007-10-17 00:25:34 | パソコン
基本情報技術者試験のための勉強をしています。

本番まであと1週間!わからない単語もいっぱい!

●ページフォールト
http://techon.nikkeibp.co.jp/article/WORD/20060315/114897/
仮想記憶方式では,アドレス空間のすべてが主記憶に存在しているわけではない。主記憶の容量に収まらない領域(ページ)は,ハード・ディスク装置などの外部記憶装置上にスワップアウトされる。この領域に対するアクセスが生じた場合,ページ・フォールトという割り込み処理が生じ,ハード・ディスク装置などに置いてあるページを主記憶に読み込む。

●スラッシング【thrashing】
http://e-words.jp/w/E382B9E383A9E38383E382B7E383B3E382B0.html
アプリケーションソフトが過大なメモリを要求したため、OSが仮想メモリへの入出力にCPUの処理能力のほとんどを割いてしまい、コンピュータが外部からの入出力を受け付けられない停止状態に陥ること。
近年のOSは、物理メモリの容量を越えるメモリ領域を扱えるようにするため、ハードディスク上に専用の領域(仮想メモリ)を設けて物理メモリ上の領域と適宜入れ替えて処理をこなしている。アプリケーションソフトが極端に巨大なメモリ領域を確保して作業をはじめてしまうと、仮想メモリと物理メモリの内容の入れ替え(スワップイン/スワップアウト)断続的に続き、スラッシング状態に陥ってしまう。
スラッシングを回避するためには、メモリ使用量の大きいアプリケーションを終了させるか(実行しない)、物理メモリの容量を増やす必要がある。

●ダイナミックアロケーション【dynamic allocation】
http://e-words.jp/w/E38380E382A4E3838AE3839FE38383E382AFE382A2E383ADE382B1E383BCE382B7E383A7E383B3.html
ソフトウェアがプログラムやデータを記憶するために使用するメモリ領域を、ソフトウェアの実行時に要求に応じて動的に割り当てる方式。「動的割り当て」とも言う。

●ラウンドロビン【round robin】
http://e-words.jp/w/E383A9E382A6E383B3E38389E383ADE38393E383B3.html
ネットワークの負荷分散の場合、同様の構成にした系を複数用意して処理要求を順番に割り振ることをいう。ホスト名とIPアドレスの対応関係を利用して複数のサーバで負荷分散を行なう「DNSラウンドロビン」が有名。
コンピュータの並列処理の場合、各プロセスを一定時間ずつ順番に実行することをいう。「巡回的並列処理」とも呼ばれる。持ち時間を使い果たしたプロセスは一旦中断され、待ち行列の最後に回される。各プロセスに割り当てられるCPU時間の断片をタイムクォンタム(time quantum)もしくはタイムスライス(time slice)という。ラウンドロビン方式ではすべてのプロセスが平等に扱われる。

scanf関数の詳細

2007-10-16 23:14:36 | ソフトウェア開発
scanf関数って、意外に奥が深い。代入抑止文字とか便利そう。

引用サイト


●入力変換仕様

フォーマット指定子だけでも知っていれば最低限のことができます。しかし、scanf関数の機能はこれだけではありません。フォーマット指定の正確な書式は、次のようになっています。

%[代入抑止文字][最大フィールド幅][変換修飾子]フォーマット指定子

[]の部分は省略可能です。[]の付いていない部分だけを取り出すと、

%フォーマット指定子

となります。これが最小の形なのです。

●代入抑止文字

「代入抑止文字」は * を書くか書かないかだけです。書いた場合、入力の受け付けを禁止できます。例えば、次のように使います。

scanf( "%d%*c%d", &num1, &num2 );

この場合、1つ目の整数入力後にある、文字の入力は変数に格納されることがありません。格納されないだけで入力は行います。だから、この場合に、次のように入力されると、

100a200

'a'はどこにも格納されることがありません。この機能は、電話番号や郵便番号の入力等に便利です。

●最大フィールド幅

「最大フィールド幅」は、入力される最大のバイト数を指定します。これまでにも文字列の入力のときに使ったことがあります。

scanf( "%80s", str );

このようにすると、80バイトまでしか入力を受け付けません。81バイト目からは、次の引数に受け継がれます。

●変換修飾子

「変換修飾子」には、「h」「l」「L」のいずれかを指定できます。

これらは定数に付けるサフィックスやプリフィックスと同じ意味です。「h」はshort、「l」はintや unsingedに対するlong、「L」はdoubleに対するlongの指定です。フォーマット指定子の指定と一致しない場合は、正しい動作を保証しません。

IPアドレス

2007-10-15 23:34:16 | パソコン
研究室の無線LANの設定が上手くいかず、せっかく時間をかけたのに失敗に終わりました。3時間がパー(泣)

けれども、2年前に学んですっかり抜けていたネットワークに関する知識の復習にいい機会となりました。


●IPアドレスクラス

<クラスA>
0.0.0.0~127.255.255.255でネットワークアドレス長は8ビット、ホストアドレス長は24ビット
アドレスの上位1ビットは「0」
<クラスB>
128.0.0.0~191.255.255.255でネットワークアドレス長は16ビット、ホストアドレス長も16ビット
アドレスの上位2ビットは「10」
<クラスC>
192.0.0.0~223.255.255.255でネットワークアドレス長は24ビット、ホストアドレス長は8ビット
アドレスの上位3ビットは「110」
<クラスD>
224.0.0.0~239.255.255.255でIPマルチキャスト専用
アドレスの上位4ビットは「1110」
<クラスE>
240.0.0.0~255.255.255.255で特に割り当ては決まっていない
アドレスの上位5ビットは「11110」

●プライベートIPアドレス

プライベートIPアドレス(ローカルIPアドレス)は、プライベートネットワーク(外部から利用できない社内LANなど)のアドレスとして使うことができる。 異なるプライベートネットワークを相互接続してルーティングすることも可能である。グローバルから直接利用できないことから、内線番号のような仕組みに例えることができる。

プライベートIPアドレスとして、次のアドレス空間が予約されている。ネットワークの規模に応じて、使い分ける必要がある。

・10.0.0.0~10.255.255.255(クラスA)
・172.16.0.0~172.31.255.255(クラスB)
・192.168.0.0~192.168.255.255(クラスC)

特に、192.168. から始まるアドレスを使うことが多い。