猫型エンジニアのブログ

プログラム/ネットワーク系の技術関連をまとめたページです 

このサイトの目次

OpenFlow 主にコントローラおよびスイッチの設定方法のまとめです。 OpenvSwitch OpenvSwitchのインストールから設定方法を紹介しています。 サーバ設定 主にCentOSやUbuntuをサーバとして利用する際の設定方法を紹介しています。 プロトコル プロトコルおよ…

はじめてのシステム開発 2

RedMine この開発規模が数億越え確実なんだけど、お客さんの要件がひどすぎる。200件近い要望(←要求仕様では決してない)の山がまず整理できない。そこでお正月に勉強していたRedMineを導入して整理したところ、チーム内ですごい評価された。やっててよ…

はじめてのシステム開発 1

はじめてのシステム開発編 IT業界に入ってもう中堅なんだけど、はじめて「要件定義〜試験」という頭からお尻までの開発にアサインされました。これまではOSSの検証とか、プロトタイプ作成とかばっかりではじめての経験。ということで、新しい環境だけあって…

プロジェクト管理 その2 

初めてのPLとしての業務の終わりが見えてきたので、今後にその経験を生かすためのメモ。 スケジュール管理の大変さ PLということはプロジェクトの進捗管理をする「責任者」という立場。この責任者は具体的には、対上司・対顧客・対チームメンバーとの3者が…

SIPお勉強 その11

SIP

UACのリクエストの送信動作については「12.2.1.1 リクエストの生成」に記載がありました。ここでもlr(ルースルーティング)の有無によって動作は変わるようです。 なんかごちゃっと書いてありますけど、クライアント側としてはリクエスト送信時には、おそら…

SIPお勉強 その10

SIPの仕様の中でもプロキシの転送周りは特に複雑な気がします。まだちょっとあやふやなところがあるため後で書き換えする予定。 ▪️ルースルーティング vs ストリクトルーティング 下にRFCの仕様から抜粋しましたが、これだけじゃ結局違いが全然わからないで…

SIPお勉強 その9

SIP

こつこつとSIPサーバの実装は進めています。レジストラを実装しているのですが、実装するたびに毎回発見があります。 レジスタサーバにおいて「ドメイン」はキーとなる概念ですね。From/ToヘッダはAORですが、コンタクトアドレスはAORではないことの違いがよ…

リーダブルコード

リーダブルコード ―より良いコードを書くためのシンプルで実践的なテクニック (Theory in practice)作者: Dustin Boswell,Trevor Foucher,須藤功平,角征典出版社/メーカー: オライリージャパン発売日: 2012/06/23メディア: 単行本(ソフトカバー)購入: 68人…

言語のしくみ その8

当たり前だけど適当な変数を用いてロック代わりにするのはダメなんですね。 4−5 ロックフリーアルゴリズム 全体の流れとしては「スレッドセーフを実現する手法の一つとしてロックがあるが、ロックは処理効率が低下」する。そのためロックを用いないスレッ…

プロジェクト管理 その2

来月からいよいよPJ始まるけど、うまくいくのかなぁ...。 第7章 プロジェクト管理とは「時間管理」「コスト管理」「品質管理」である。 時間管理 要求管理や品質管理とことなり時間管理だけは熟練の技がいらない。 時間管理は厳密にやりすぎると上手くいか…

言語のしくみ その7

4−2基本テータ構造 データ構造から見るCの性格 とても大切そうなことなのでメモ。でもなんとなくわかるような、わからないような...。「結局は生のCPUの動作が想像できれば自然なこと」だそうです。 Cの基本データ構造の特徴の一つは、1バイトから8バイ…

SIPお勉強 その8 

SIP

REGISTERリクエスト RFC3261の「10.2 REGISTERリクエストの構築」に基づくREGISTERリクエストの必須ヘッダフィールドに関するによる制約事項は以下の通り。 Request-URI: SIP URIのuserinfoと@コンポーネントが存在してはならない[MUST NOT]。 To: Toヘッダ…

SIPお勉強 その7

SIP

あいかわらずちょこちょことgithubのSIPのソースコードは更新しています。RFCも並行して読んでいるが、SIPは意味が重複しているように見えるヘッダが多く使い分けがよくわからない...。 ToフィールドとRequest-URIの違い どちらも「宛先」という意味では同じ…

言語のしくみ その6

2-7 AST(抽象構文木)に変換 抽象構文木をたどるには再帰呼び出しを実行する。 抽象構文木をたどる処理系は、メモリ空間に不連続に存在する構造体にアクセスする。よってキャッシュ効率は落ちてしまい性能がでない。 多くの処理系ではアクセスは狭い領域で…

SIPお勉強 その5

SIP

「やっぱり実際に実装するのが一番勉強になるね」ということでSIPのサーバプログラムを書き始めました。とりあえずregisterやinviteの処理くらいはできるところまで実装するのが目標です。サーバとしての実用性を考えるとC言語等で実装が当然望ましいのです…

言語のしくみ その5

言語設計者はCPUの内部構造まで意識しないといけないとか、大変ですね...。(>_ 2-6 キャッシュとシンボル キャッシュの有効活用 どれだけ効率的にキャッシュを利用できるかで、CPUの性能は50倍程度は異なる。 コア間で共有するキャッシュ上のデータの書き…

プロジェクト管理 その1

今まではプレイヤーとして業務に取り組んできましたが、そろそろマネージメント業務も任されるようになりました。ということで3冊プロジェクト管理の本を読んでみました。 まずは1冊目「ソフトウェアプロジェクト管理」から。ここでは本の概要とそこでの要…

SIPお勉強 その3

SIP

RFC3263から大切そうな用語をつまみ食いしました。日本語約は大変助かりますが、AORの訳が不明瞭なため私が直しました。 SIP URIコンポーネントとSIPS URIコンポーネント userinfoは省略できるけどhostは略せないのね。一見変なようだけど、これは下のAORの…

SIPお勉強 その2

SIP

SIPを理解するのに一番確実なのは、RFCを見ながら実際にSIPスタックを実装することだと思う。時間があれば是非やってみたいけど、なかなか難しそう。とりあえずこことかに参考になりそうな資料がある。いままでだましだましでSIP業務やってきたけど、RFCを真…

SIPお勉強 その1

SIP

業務でSIPを使うようになったので、そのお勉強メモです。できる限りRFCや専門書籍に当たって正確な理解を深めたい。 SIP標準化の歴史 ここを参照。結構紆余曲折を経てるのね。 まずRFC SIP関連のRFCは以下のサイトに和訳付きでまとまっています。全部で40…

言語のしくみ その4

2-2 新言語「Streem」 シェルは自然な形でマルチコアを活用している Streemの特徴 軽量なコンカレント実行 競合条件の排除(すべてのデータ構造はイミュータブル) 計算モデル 2-3 文法チェッカーをまず作る 字句解析:lex 構文解析:yacc 2-4 イベントループ…

言語のしくみ その3

「並列」と「平行」の違いってすっごくわかりにくいですよね...。私も以前相当悩みました。ですがCPUのマルチコア化の傾向は今後も続くため、マルチコアの活用技術が脚光をあびるのは時代の流れなのですね。勉強になります。 マルチコア化への対応技術 ソフ…

言語のしくみ その2

PythonのVMという単語が、以前は何を意味しているのかがわかりませんでしたが、今はすっきりしました!というかVMの話しているのに、RISCやCISCの話が出てきてびっくり...。この本レベル高いな。プロセスVMって本当にCPUを意識するんですね...。 1-3 バーチ…

言語のしくみ その1

まつもとゆきひろ 言語のしくみ作者: まつもとゆきひろ出版社/メーカー: 日経BP社発売日: 2016/12/22メディア: 単行本この商品を含むブログ (1件) を見る今年の年末年始の勉強本の紹介です。 1-2 言語処理系の仕組み 「プログラミング言語」 =「言語」+「…

情報処理試験対策

単に教科書を読むだけではあまり意味がなく、自分の言葉で噛み砕いて咀嚼しないと覚えられません。 メインメモリ メモリインターリブ メモリアクセスの局在性を利用して、複数のメモリバンクに対して並列にアクセスすることで、メモリアクセスを高速化させる…

Gitの使い方

はじめに 今更ですがようやくGitおよびGitHubの使い方の勉強を始めました。いままで何となく使っていたため、本格的に勉強するのは初めてです。 Gitの解説サイトは星の数ほどありますが、自分自身の言葉で書き直すと理解が深まります。 GitとGitHubの違い Gi…

数学ガール・ガロア理論

数学ガール/ガロア理論作者: 結城浩出版社/メーカー: SBクリエイティブ株式会社発売日: 2014/07/24メディア: Kindle版この商品を含むブログを見る 頭の体操に今年の夏中にガロア理論の概要を理解しようと思う。厳密な数学的証明などは傍においておいて、と…

コンピュータシステムの理論と実装(第4章〜)

第4章 機械語 Hackコンピュータの仕様 ノイマン型コンピュータHackの仕様は以下の通り レジスタ:16bit幅のレジスタのDとAのレジスタを持つ メモリアドレス空間:ともに16bit幅の命令メモリとデータメモリを持つ、アドレス空間はともに15bit 注意 仕様によ…

コンピュータシステムの理論と実装(第1章〜第3章)

コンピュータシステムの理論と実装 ―モダンなコンピュータの作り方作者: Noam Nisan,Shimon Schocken,斎藤康毅出版社/メーカー: オライリージャパン発売日: 2015/03/25メディア: 単行本(ソフトカバー)この商品を含むブログ (4件) を見る まだSICPも2章の…

IRQ

# cat /proc/interrupts CPU0 0: 175 IO-APIC-edge timer 1: 167 IO-APIC-edge i8042 8: 0 IO-APIC-edge rtc0 9: 0 IO-APIC-fasteoi acpi 12: 225 IO-APIC-edge i8042 14: 5195 IO-APIC-edge ata_piix 15: 39732 IO-APIC-edge ata_piix 19: 30270 IO-APIC-fa…