こんぶにのブログ

エンジニアという職業を通して学んだことを発信するブログです。

【2024/2/20】応用情報学習メモ

JPCERT

脆弱性が見つかったとき、JPCERTと開発者がやること。
JPCERTといつ脆弱性を発表するかのタイミング合わせ。
漸弱性が見つかったときはIPAに報告する。
発表するのもIPA

プログラムマネジメント

複数のプロジェクトが進行してて、それをうまい具合にコントロールして両方とも無事成功させよう。

マクシミン原理

ゲーム理論。各ケースのうち、一番利益が小さいパターンを見ればよい。で、各ケースごとに一番利益が小さいものを比較して、それが一番大きいものを選ぶ。

ギグエコノミー

単発で仕事を得る人がたくさんいて生まれる経済圏。フリーランスとかもそうだし、ウーバーいーつ的なのもそう。正社員じゃなくて一時的に働く人。

メモリインターリーブ

主記憶の中に仕切りを作って並列にアクセスできるようにして、アクセスや処理を早くする。
仕切りのことをバンクという。

分散データベースの透過性

分散データベースは、分散していることを利用者に意識させてはいけない。

複製に対する透過性

複数データベースに同じデータがあっても意識させない

分割に対する透過性

表が複数DBで分割されてても意識させない。

移動に対する透過性

表が別DBに移動しても感じさせない

位置に対する透過性

どこにあっても普通に使える

データモデルに対する透過性

どのDBMSをつかっても大丈夫

障害に対する透過性

障害が起きても利用者はそれが分からない。(分散だから)

ビットマップフォントとアウトラインフォント

ビットマップフォントはドットで文字を表現する。シンプルだから早い。漢字は細かいからこっちのが向いてる。
アウトラインフォントは曲線で文字を表現する。きれいに表示できる反面、時間がかかる。

ウォッチドッグタイマ🐶

マイコンマイクロコンピュータ)というコアの部分が暴走しないように監視する。
常にマイコンからメッセージというか、何かが送られていて、それを受け取るとウォッチドッグ🐶は自分が持ってるタイマー⌚をリセットする。
これがリセットされなかった時は「あ、異常があったんだな」ってことでシステムをリセットする。
この無理やり割り込む割り込みを「マスカブル割込み」という。逆に無理やり割り込めないのをノンマスカブル割込み。

CVSS

CVと付いているということは脆弱性に関する何か。(CVEとかある)
脆弱性の深刻度を表す国際的な指標

KPI KGI CSF

KPIはパフォーマンス=目標。チェックポイント的な立ち位置。
KGIはゴール。なので一番最初に決める。
CSFはクリティカルサクセスファクター。 成功するための要因。これがあれば成功するだろう、というもの。
なので、KGIでゴール決めます。そのゴールを達成するためのCSF決めます。最後にチェックポイント(KPI)決めますという感じ。

直積

ふたつ表があってそれぞれの項目を全パターン組み合わせた表を出力する。

PMBOK

プロジェクトマネジメントボディオブノーレッジ.
プロジェクトマネジメントに関する教科書的なもの。

スクラムマスタ

スクラムのやり方を管理する人。スクラムうまく出来てるかな~みんなに教えてあげようかな~たまには相談載ろうかな~ちょっとまわしちゃおうかな~という人。ぶっちゃけ必要なのかはよく分からない。
プロダクトオーナーがチームリーダー的な存在。バックログの管理とかはこの人がやる。

UDPにないものは?

宛先ポート番号・送信先ポート番号・シーケンス番号・チェックサム
シーケンス番号がない。
シーケンス番号は送られてきたデータの順番を管理確認するもので、UDPにそんなことしている暇はない。
ちゃちゃっと送る、それだけが使命。背負わされた運命。

デジタルツイン

現実とデジタルの双子(ツイン)
デジタル世界に現実みたいな空間を作って色々やること。
現実そのままの空間をデジタルで作って、現実と同じようにシミュレーションできること。

ブロードキャスト、マルチキャスト、ユニキャスト

ブロードキャストは全送信かつ一括送信。
マルチキャストは選択して複数送信。
ユニキャストは一つ選択してそこだけに送信。 uniは単一の、とかそういう意味。

N進数から2進数への変換

8進数なら2の3乗だから1桁を3つに分割して、2進数にする。
8進数の10とか来たら、1と0をそれぞれ桁を3つもたせて2進数にして合体。
001 + 000 = 001000 8進数の10は8(桁上がりしてるし)

16進数は上のやり方で4桁持たせるだけ。
1A なら、0001 + 1010 = 00011010 が二進数の値

メモ

JPCERTと開発者は脆弱性公表へのスケジュールを決める。届け出はIPAに。公表はIPAがやる。
プログラムマネジメントとは、同時に進行している複数のプロジェクトの依存関係を確認して、うまく最適化すること。
マクシミン原理:各パターンの中で、一番利益が低いところを見る。それぞれのパターンを比べて、低いところが一番大きいパターンを選ぶ。
ギグは音楽で言う短いセッションのこと。つまり短い働き=単発契約的な働き方。
ニュートン法
主記憶に並列アクセスしてるかのように見せかける。主記憶をバンクという区画で区切る。
分散データベースは利用者に「あ、これ分散してるな~」と意識させないことが重要。その中でも以下が大事。
複製に対する透過性:複数DBで同じデータがあっても意識させない。
移動に対する透過性:表がべつのDB に移動しても意識させない
分割に対する透過性:表が複数DBにわたって存在しても意識させない
データモデルに対する透過性:どのDBMSを使っても同じように使える。と感じさせる。
位置に対する透過性:どこにDBがあっても使える。
障害に対する透過性:障害が起きてもそれを感じさせない。
ビットマップフォントは白黒ドットで表示する。シンプルだから早い。
アウトラインフォントは輪郭を曲線で表現する。漢字は細かいからこっちで表示したほうがよさそうだな~と思いつつ、実はビットマップフォントのが良い。細かすぎてうまく描けないらしい。
ウォッチドッグタイマはマイコンマイクロコンピュータ)の暴走を監視して、やばくなったらリセットする。
マイコンからの信号を常に受け取っている。 で、信号を受け取ったら自分のタイマをリセットする。なので信号が送られなくなったら何かが起きていると判断し、システムをリセットする。マスカブル割込みはその発生を抑制できる割り込み。
CVSSは基本・環境などの基準から脆弱性を評価する。
PMBOKはプロジェクトマネジメントbody of knowledge。プロジェクトマネジメントの教科書的な。
定量的→数値で。
定性的→数値以外で。ランク付けなど。
スクラムマスタの役割。スクラムの役割とかアジャイルについてみんなに広めたり、コーチングしたりする。自分が思ってたのとはだいぶ違った。プロダクトオーナーってのがチームリーダーっぽい役割をする(バックログ管理とか)
UDPにはシーケンス番号がない。送信データの順番を確認するものだが、UDPはなにより早く送信したいためそんな確認はする必要がない。
デジタルツイン:デジタルとリアルの双子(ツイン)を作り出す。現実そっくりな仮想空間のこと。