「厳選5題」過去問と解説 | 平成25年度 秋期 の過去問やるならこれをやれ


2020-03-04 更新

ここでは、平成 25 年度 秋期 基本情報技術者試験の午前試験 の中から「やるべき問題」を 5 題に厳選し、ぶっちゃけた解説をさせていただきます。

やるべき問題とは、よく出る問題であり、かつ、練習すればできる問題(練習しないとできない問題)です。

 

【厳選問題 1 】

見かけは難しそうですが、実はとっても簡単な問題です

問 31

“商品”表に対して,更新 SQL 文を実行するトランザクションが,デッドロックの発生によって異常終了した。異常終了後の “商品” 表はどれか。ここで,”商品” 表に対する他のトランザクションは,参照は行うが更新はしないものとする。

商品

商品コード 商品名 販売単価
A010 AAA 2,500
B020 BBB 1,000
C030 CCC 4,500

〔更新 SQL 文〕

DELETE FROM 商品 WHERE 商品コード = 'B020'

 

商品コード 商品名 販売単価
A010 AAA 2,500
B020 NULL 1,000
C030 CCC 4,500

商品コード 商品名 販売単価
A010 AAA 2,500
B020 BBB 1,000
C030 CCC 4,500

商品コード 商品名 販売単価
A010 AAA 2,500
C030 CCC 4,500

商品コード 商品名 販売単価
B020 BBB 1,000
解説

この問題は、データベースに関する用語、頻出の SELECT 命令ではない SQL 文、データが入った表、などが並んでいて、一見して難しそうですが、実は、とっても簡単です。

「デッドロック」という言葉の意味がわかっていれば、正解を選ぶことができます。

 

デッドロックとは、複数のトランザクション(データベースに対する1つの処理のまとまり)が、お互いに相手の処理が終わるのを待っていて、先に進めない状態 です。

DBMS( Data Base Management System )は、デッドロックを検出すると、トランザクションを ロールバック(トランザクションを異常終了させて、データベースの内容を元に戻すこと)します。

したがって、異常終了後の商品表は、問題文に示された商品表と同じ内容の選択肢イです。

「ええっ! たったそれだけの問題なのですか?」と思われるかもしれませんが、そうなのです。おそらく出題者は、デッドロックという用語をテーマにした問題を作りたかっただけなのでしょう。

具体例を示したので、このように大げさな問題になってしまったのです。

このような問題に遭遇したときは、難しそうな見かけに惑わされずに、「必ずできる!」という自信を持って解いてください。

 

解答

label 関連タグ: データベース

 

【厳選問題 2 】

共有ロックと専有ロックの違いを知っておこう

問 32 (平成 25 年度 秋期)

表は,トランザクション 1 ~ 3 が資源 A 〜 C にかけるロックの種別を表す。また,資源へのロックはトランザクションの開始と同時にかけられる。トランザクション 1 ~ 3 のうち二つのトランザクションをほぼ同時に開始した場合の動きについて,適切な記述はどれか。ここで,表中の “-” はロックなし,”S” は共有ロック, “X” は専有ロックを示す。

トランザクション\資源 A B C
1 S X
2 S X
3 X S

ア トランザクション 1 の後にトランザクション 3 を開始したとき,トランザクション 3 の資源待ちはない。
イ トランザクション 2 の後にトランザクション 1 を開始したとき,トランザクション 1 の資源待ちはない。
ウ トランザクション 2 の後にトランザクション 3 を開始したとき,トランザクション 3 の資源待ちはない。
エ トランザクション 3 の後にトランザクション 1 を開始したとき,トランザクション 1 の資源待ちはない。

解説

もう 1 つ、トランザクションに関する問題を紹介しましょう。

トランザクションは、データを処理するときに、そのデータが他のトランザクションから使われないように ロック をかけます。

他のトランザクションは、ロックが解除されるのを待つことになります。複数のトランザクションが、お互いに相手のロックが解除されるのを待っていて、先に進めない状態になってしまうことが、先ほどの厳選問題 1 のテーマになっていたデッドロックです。

 

ロックの種類には、「共有ロック」「専有ロック」 があり、それらがこの問題のテーマになっています。

共有ロックは、データを参照するときにかけるロックです。
専有ロックは、データを更新(登録、更新、削除)するときにかけるロックです。

トランザクションを擬人化すれば、

共有ロックは「俺がデータを見ているから、他の奴らは更新するなよ。ただし、見るだけならいいぞ」というイメージです。
専有ロックは「俺がデータを更新しているから、他の奴らは更新するなよ。見るのもだめだぞ」というイメージです。

つまり、共有ロックがかけられたデータには、他のトランザクションから共有ロックをかけられますが、専有ロックはかけられません。

専有ロックがかけられたデータには、他のトランザクションから共有ロックも専有ロックもかけられません。

 

それでは、問題を見てみましょう。

ここでは、ロックをかける A 、B 、C というデータのことを 「資源」 と呼んでいます。

トランザクションは 3 つあり、

トランザクション 1 は「 A に共有ロックをかける → C に専有ロックをかける」、
トランザクション 2 は「 A に共有ロックをかける → B に専有ロックをかける」、
トランザクション 3 は「 A に専有ロックをかける → B に共有ロックをかける」

という順序で、それぞれ処理を行います。

これによって、どのようなロックの資源待ち(資源のロックの解除待ち)が生じるかを、選択肢から選ぶという問題です。

 

トランザクション 1 の後にトランザクション 3 を開始すると、先にトランザクション 1 が資源 A に共有ロックをかけ、その後でトランザクション 3 が資源 A に専有ロックをかけようとしますが、既に共有ロックがかけられているので資源待ちになります。

したがって、アの記述は、不適切です。

トランザクション 2 の後にトランザクション 1 を開始すると、先にトランザクション 2 が資源 A に共有ロックをかけ、その後でトランザクション 1 が資源 A に共有ロックをかけます。

どちらも共有ロックなので資源待ちになりません。

次に、トランザクション 2 は誰も使っていない資源 B に専有ロックをかけ、トランザクション 1 が誰も使っていない資源 C に専有ロックをかけます。どちらも、資源待ちになりません。

したがって、イの記述は、適切です。

トランザクション 2 の後にトランザクション 3 を開始すると、先にトランザクション 2 が資源 A に共有ロックをかけ、その後でトランザクション 3 が資源 A に専有ロックをかけようとしますが、既に共有ロックがかけられているので資源待ちになります。

したがって、ウの記述は、不適切です。

トランザクション 3 の後にトランザクション 1 を開始すると、先にトランザクション 3 が資源 A に専有ロックをかけ、その後でトランザクション 1 が資源 A に共有ロックをかけようとしますが、既に専有ロックがかけられているので資源待ちになります。

したがって、エの記述は、不適切です。

 

解答

label 関連タグ: データベース

 

【厳選問題 3 】

略語の問題を練習するときには、2 つのポイントがあります

問 36 (平成 25 年度 秋期)

電子メールで,静止画,動画,音声などの様々な情報を送ることができる仕組みはどれか。

ア FTP  イ MIME  ウ POP  エ TELNET

解説

選択肢に略語が並んでいますね。はじめに答えを言ってしまいますが、正解はエの MIME(マイム)です。

これまでの連載でも何度か説明してきましたが、この手の問題を練習するときのポイントは、2 つあります。

 

1 つは、 正解となっている選択肢の略語だけを覚える ことです。

試験では、同じ問題が何度も再利用されています。この問題も、再利用されるときには、そのまま再利用されるはずなので、ここでは、 MIME という略語だけを覚えてください。

他の略語も気になるかもしれませんが、それらは、それらが正解となっている問題に遭遇したときに覚えてください。これが、効率的な学習方法です。

 

もう 1 つは、 略語の意味を調べて覚える ことです。

もしも、MIME を「 MIME とは、電子メールで、静止画、動画、音声など様々な情報を送ることができる仕組みである」と覚えるとしたら、MIME という言葉と説明がつながらないでしょう。

「 MIME って何だっけ?」
「電子メールで、静止画、動画、音声など様々な情報を送ることができる仕組みって何だっけ?」

ということになってしまいます。

 

MIME は、Multipurpose Internet Mail Extension という意味です。

直訳すると、「多目的なインターネットメールの拡張」です。

そもそも インターネットの電子メールというものは、文字しか送れない ようになっています。

静止画、動画、音声などの様々な情報を送ることができるのは、それらのデータを文字に変換してメールに添付しているからです。その仕組みを MIME と呼びます。

「 MIMEは、Multipurpose Internet Mail Extension という意味だ」と覚えれば、「電子メールで、静止画、動画、音声など様々な情報を送ることができる仕組みはどれか」という問題を見て、すぐに MIME を選べるはずです。

 

解答

 

【厳選問題 4 】

ネットワークの階層とは、どういうことかを知ってください

問 37 (平成 25 年度 秋期)

1 個の TCP パケットをイーサネットに送出したとき,イーサネットフレームに含まれる宛先情報の,送出順序はどれか。

ア 宛先 IP アドレス,宛先 MAC アドレス,宛先ポート番号
イ 宛先 IP アドレス,宛先ポート番号,宛先 MAC アドレス
ウ 宛先 MAC アドレス, 宛先 IP アドレス,宛先ポート番号
エ 宛先 MAC アドレス,宛先ポート番号,宛先 IP アドレス

解説

この問題は、とってもよい問題だと思います。

ネットワークが階層化されているとは、どういうことかを、イメージできるようになるからです。

基本情報技術者試験のテーマである OSI 基本参照モデル では、ネットワークを7つの階層に分けていますが、実際に普及しているプロトコルは、

「アプリケーションプロトコル」
「 TCP 」
「 IP 」
「イーサネット」

の 4 つの階層に分けることができます。

OSI 基本参照モデル 実際に普及しているプロトコル
アプリケーション層 HTTP や SMTP などのアプリケーションプロトコル
プレゼンテーション層
セッション層
トランスポート層 TCP
ネットワーク層 IP
データリンク層 イーサネット
物理層

ユーザーが Web ブラウザやメールソフトなどのアプリケーションから送信したデータは、4 つの階層を上から下にたどって送出されます。

その際に、それぞれのプロトコルに応じた宛先と差出人などの情報が付加されるのです。

この情報は、データの先頭に付加されるので 「ヘッダ」 と呼ばれます。

 

アプリケーションで作成されたデータは、TCP → IP → イーサネット という階層を順番にたどります。

TCP の階層では、TCP における宛先と差出人の識別番号である「 TCP ポート番号」が付加されます。
IPの階層では、IPにおける宛先と差出人の識別番号である「 IP アドレス」が付加されます。
そして、イーサネットの階層では、イーサネットにおける宛先と差出人の識別番号である「 MAC アドレス」が付加されます。

この状態になったデータを「イーサネットフレーム」と呼びます。

大雑把にいうと、イーサネットフレームの内容は、先頭から順に MAC アドレス、IP アドレス、TCP ポート番号、アプリケーション のデータなので、ウが正解です。

 

arrow_back イーサネットフレームを送出する方向

 

解答

label 関連タグ: OSI 参照モデル

 

【厳選問題 5 】

クラスの関連付けの表記方法をまとめて覚えよう

問 46 (平成 25 年度 秋期)

UML のクラス図のうち,汎化の関係を示したものはどれか。





解説

この問題を選んだのは、UML のクラス図におけるクラスの関連付けの表記方法をまとめて覚えられるからです。

クラスは、現実世界のオブジェクト(物や生き物)を定型化したものです。

たとえば、会社に勤務している「佐藤さん」「鈴木さん」「田中さん」というオブジェクトは、「社員クラス」に定型化できます。

クラスは、

「クラス名」
「属性(データ)」
「操作(データを使った処理)」

を持ちます。それらを 3 段重ねの四角形で示したものが、クラス図 です。

この問題では、クラス名だけが示されています。

 

クラス図の表記方法

 

オブジェクト指向では、システム全体を、クラスを単位として モジュール化(部品化) します。

複数のクラスから構成されたシステムでは、クラスとクラスが関連を持ちます。

単に何らかの「関連」があるということは、クラスと他のクラスを直線で結んで示します。これは、選択肢アです。

関連の多重度( 1 対 1 、1 対多、多対多)を書き添えることもでき、1 を「 1 」で表し、多を「 * 」で表します。

選択肢アの多重度は、1 対 1 です。このクラス図は、「自動車」と「車検証」は、1 対 1 の関連を持っていることを表しています。

 


あるクラスが他のクラスを使っていることを 「依存」 と呼びます。

依存は、使う側から使われる側に向かって、破線の矢印を引くことで示します。

選択肢エのクラス図は、「ドライバ」が「自動車」に依存している(ドライバが自動車を使う)ことを表しています。

 


あるクラスが他のクラスを持っていることを 「集約」 と呼びます。

集約は、持つ側にひし形を書き添えた線を引くことで示します。

必須のもの(必ず持っているもの)の場合は、ひし形の内部を黒く塗りつぶし、オプション(持ってなくても構わないもの)の場合は、塗りつぶしません。

選択肢ウのクラス図は、「自動車」が「タイヤ」と「エンジン」を集約している(自動車がタイヤとエンジンを持っている)こと、そしてタイヤとエンジンが必須のものであることを表しています。

さらに、どちらも多重度が 1 対多であることを表しています。

 


あるクラスの上位概念のクラスを定義することを 「汎化」 と呼びます。

汎化は、上位概念のクラスに向かって、三角形を書き添えた線を引くことで示します。

選択肢イのクラス図は、「スポーツカー」の上位概念として「自動車」を定義することを表しています。

この問題は、汎化を表しているクラス図を選ぶものなので、選択肢イが正解です。

 


汎化は、少しわかりにくいと思いますので、補足説明をしておきましょう。

問題に示された「スポーツカー」の上位概念が「自動車」であるという例より、複数のクラスの共通点を抽出したクラスを定義するという例の方が、わかりやすいでしょう。

以下のクラス図は、「スポーツカー」と「トラック」の共通点を抽出したクラスとして「自動車」を定義しています。

スポーツカーとトラックは、どちらも自動車だからです。

この場合、自動車を「スーパークラス(上位クラス)」、スポーツカーとトラックを「サブクラス(下位クラス)」と呼びます。

 

 

解答

label 関連タグ: UML

 

記事をお読みいただきありがとうございます。

もしも、一度解いただけでは、よくわからない問題があったなら、わかるまで何度でも練習してください。「やるべき問題」は「わかるまでやるべき問題」だからです。

この厳選問題大全集が、受験者の皆様のお役に立てば幸いです。

 

label 関連タグ
実は、午前試験を『免除』できます 独習ゼミで午前免除試験を受けた 86% の方が、
午前分野を免除しています。
2021 年度 春期試験 向け
最大20%OFF!
2021年度 春期試験向け
最大20%OFF!

詳しく見てみるplay_circle_filled
label これまでの『厳選5題 過去問と解説』の連載一覧 label 著者

『プログラムはなぜ動くのか』(日経BP)が大ベストセラー
IT技術を楽しく・分かりやすく教える“自称ソフトウェア芸人”

大手電気メーカーでPCの製造、ソフトハウスでプログラマを経験。独立後、現在はアプリケーションの開発と販売に従事。その傍ら、書籍・雑誌の執筆、またセミナー講師として活躍。軽快な口調で、知識0ベースのITエンジニアや一般書店フェアなどの一般的なPCユーザの講習ではダントツの評価。
お客様の満足を何よりも大切にし、わかりやすい、のせるのが上手い自称ソフトウェア芸人。

主な著作物

  • 「プログラムはなぜ動くのか」(日経BP)
  • 「コンピュータはなぜ動くのか」(日経BP)
  • 「出るとこだけ! 基本情報技術者」 (翔泳社)
  • 「ベテランが丁寧に教えてくれる ハードウェアの知識と実務」(翔泳社)
  • 「ifとelseの思考術」(ソフトバンククリエイティブ) など多数

grade IPA認定
午前免除制度対応
eラーニング

人気記事

人気のタグ