Webブラウザは,開発者にとってもユーザーにとっても,もはや日常の一部となっているほど身近なソフトウエアですが,近年のブラウザはあまりにも高機能かつ巨大になってしまったため,その仕組みを詳しく理解することは困難です。そこで,シンプルなブラウザをRustを用いて実装することによって,ブラウザ上でWebサイトを開くまでに何が起きているのかを理解することを目的とします。さらに,作成したブラウザを,別冊で解説・実装している自作OSの上で動かすことによって,ブラウザと更にその裏側を理解していきます。
Webブラウザは,開発者にとってもユーザーにとっても,もはや日常の一部となっているほど身近なソフトウエアですが,近年のブラウザはあまりにも高機能かつ巨大になってしまったため,その仕組みを詳しく理解することは困難です。そこで,シンプルなブラウザをRustを用いて実装することによって,ブラウザ上でWebサイトを開くまでに何が起きているのかを理解することを目的とします。さらに,作成したブラウザを,別冊で解説・実装している自作OSの上で動かすことによって,ブラウザと更にその裏側を理解していきます。
前回は、カーネルのお話から一度離れて、LinuxContainersプロジェクトから発表されたIncusというプロダクトを紹介しました。 少し間が空いてしまいましたが、今回からはまたLinuxカーネルの機能紹介に戻りましょう。第53回、第54回で紹介したCPUコントローラの話に続いて、メモリコントローラのお話をします。 メモリコントローラについては、以前、第5回で簡単に説明しています。このときの説明はcgroup v1のメモリコントローラを説明しました。今回は、cgroup v2のメモリコントローラを紹介します。 メモリ回収処理とメモリ負荷 コントローラを説明する前に、メモリコントローラを説明する前提となる、メモリの回収処理とメモリ負荷について簡単に紹介します。さらに詳しい情報については、Linuxカーネルの解説文書などをご参照ください[1]。 OS実行中には、色々とメモリを使う要素が存在
すべてのフェーズでミスが重なった ―全銀ネットとNTTデータ、全銀システム通信障害の詳細を説明 全国銀行資金決済ネットワーク(以下、全銀ネット)とNTTデータは12月1日、2023年10月10日~11日にかけて全国銀行データ通信システム(以下、全銀システム)で発生した通信障害に関する報道関係者向けの説明会を開催しました。本件についてはNTTデータが11月6日に行った途中経過報告の内容をもとにレポートしましたが、今回、全銀ネットとNTTデータが揃って会見を行ったことで、より詳細な障害の原因が判明したので、あらためてその内容を検証してみたいと思います。 説明会の登壇者。左から、全銀ネット 企画部長 千葉雄一氏、事務局長兼業務部長 小林健一氏、理事長 辻松雄氏、NTTデータ 代表取締役社長佐々木 裕氏、取締役副社長執行役員 鈴木正範氏 なお、全銀ネットとNTTデータは、今回の障害に関して金融
本章では、HTTP/3がTCPに代わって下位層で用いるQUICについて解説します。 QUICはトランスポートプロトコル QUICはトランスポートプロトコルです。QUICの説明に入る前に、トランスポートプロトコルついておさらいします。 TCP/IPの4階層モデル プロトコルは階層で役割を分担しています。TCP/IPの4階層モデルでは、アプリケーション層、トランスポート層、インターネット層、ネットワークインタフェース層に分かれます(図1)。 図1 TCP/IPの4階層モデル アプリケーション層に分類されるアプリケーションプロトコルは、クライアントやサーバで動作するアプリケーションの動作に関するデータやメッセージの通信ルールを規定します。たとえばSMTP(Simple Mail Transfer Protocol)は、メールを送信する通信ルールを規定しています。HTTPはこの層に属します。
Linux Daily Topics Red Hat、RHELからLibreOfficeパッケージを削除へ、今後はFlatpakで対応 Red HatのデスクトップチームマネージャのMatthias Classenは6月1日、Fedoraプロジェクトの開発者向けメーリングリストにおいて、Red Hatが近い将来、「Red Hat Enterprise Linux(RHEL)」本体でのLibreOfficeサポートを終了することを明らかにした。 LibreOffice packages -devel - Fedora Mailing-Lists Classenによれば、Red Hatのディスプレイシステムチームはこれまで数年間に渡り、RHEL上でLibreOfficeパッケージをサポートするために、アップストリームであるFedoraのLibreOfficeパッケージのメンテナンスに労力
2018年から5年間に渡り、Fedoraプロジェクトのプログラムマネージャを務めてきたBen Cottonは5月12日、同日付でRed Hatから解雇されたことを自身のブログで明らかにした。Red Hatは4月、グローバルの全従業員を対象に約4%の人員削減を行うことをCEOのMatt Hicks名義のメールで従業員に伝えていたが、その対象人員のひとりにCottonが選ばれてしまったようだ。 #inaction bcotton -Blog Fiasco Cottonはブログの冒頭で「自分の人生でレイオフされるのは初めてのことであり、これが最後であってほしいと望むが、そうなるとも限らない。(解雇を告げられてから)この3週間、とまどいや怒り、悲しみなどさまざまな感情を感じなかったといえば嘘になるが、同時に多くの人々から自分が愛され、サポートされていることも実感した。まるでジョージ・ベイリー(映
Linux Daily Topics 2021年4月15日パニックお断り―Linus、"Rust for Linux"の盛り上がりに釘を刺す 開発者の間で人気上昇中のRustだが、Linuxカーネル開発においても1年ほど前からメインラインでのRustサポート―新たにデバイスドライバを記述する言語としてRustを認めるよう求める声が強くなりつつある。3月にはカーネル開発者のMiguel Ojedaが最初の"Rust for Linux"となるパッチをlinux-next(次期カーネルへのマージを希望するパッチが集められたGitリポジトリ)にポストし、Stephen Rothwellによってマージされた。 kernel/git/next/linux-next.git - The linux-next integration testing tree Ojedaはさらに一歩踏み込んだステップとし
Linux Daily Topics 2021年3月26日Red Hat、ストールマンのFSFボードメンバー復帰に怒り心頭「すべての資金を引き上げる!」 2019年9月にFree Software Foundation(FSF)のボードメンバーの座を事実上、追放された格好で辞任したリチャード・ストールマン(Richard Stallman)が、この3月にボードメンバーにひっそりと復帰していた。FSFのボードメンバー(Board of directors)紹介ページにはたしかに最下部に「Richard M. Stallman」の名前が掲載されている。 いくつかの海外メディアの報道によれば、ストールマンは3月20日~21日(米国時間)に行われたFSFのカンファレンス「LibrePlanet」に登壇し、21日のセッションにおいて「私は再びFSFのボードに復帰した」とアナウンスしたという。「It'
この本の概要 技術が進むにしたがって,コンピュータの中身が見えなくなってきています。コンピュータの頭脳としてCPUがあって,OSがあってプログラムが動く…。漠然とわかっていても,実際にどういうしくみで意図したとおりに動作しているのかとなると,なかなかイメージできないものです。本書はこのように,ブラックボックスになっているコンピュータのしくみを,「炙る」「揚げる」などの過激な手法も用いつつ,半導体レベルから実際に目に見える形でひもといていきます。 こんな方におすすめ コンピュータの仕組みを知りたい人 Maker(『ハードウェアハッカー』の読者層) 第1章 ソフトウェアとハードウェアの世界の境界 1.1 コンピュータが「見えなく」なってきている むかしはパソコンと電子回路は一体 コンピュータを理解する上での抽象化・ブラックボックス化 1.2 ブラックボックスの中身を見るといいことが? ブラック
Linux Daily Topics 2020年1月10日Don't use ZFS ―Linus、ZFSをマージしない姿勢をあらためて強調 「Don't use ZFS. ―ZFSは使わない。その理由はシンプルだ。ZFSはこれまでずっと、バズワード以上の何物でもなく、そして実感するのだけど、例のライセンシング問題は僕にとってZFSを価値のない存在と思わせるだけだ」 1月6日、IT業界に特化したオンラインメディア「Real World Tech」のフォーラムで繰り広げられたあるスレッドにて、Linus TorvaldsはZFSをメインラインにマージする予定がないことをあらためて明確に主張している。 Do not blame anyone. Please give polite, constructive criticism By: Linus Torvalds -Real World Te
Linux Daily Topics 2019年10月16日“脱帽です”―9億3,000万ハッシュ/秒でようやく判明したケン・トンプソンのパスワードは…? AT&Tのベル研において、かのケン・トンプソン(Ken Tompson)とデニス・リッチー(Dennis Richie)がUNIXの開発を開始したのが1969年、つまり今年2019年は"UNIX50周年"にあたるアニバーサリーイヤーでもある。その記念すべき年に、現代のハッカーたちが偉大な先駆者に挑んだ5年越しのゲームがゴールを迎えた。 RubyのWebサーバインタフェース「Rack」やテストフレームワーク「Bacon」の開発者として知られるLeah Neukirchenは2014年、BSD 3のソースツリーからパスワードファイル(/etc/password)を入手した。そこにはトンプソンやリッチーのほか、GoogleのCEOを務めたエリ
インターネット通信の常識 今や私たちは,ネットワークに接続しない日はありません。しかし,あたりまえのように接続しているネットワークの仕組みについて,あいまいな知識しか持っていない人もいることでしょう。 インターネットはIPで実現されており,そのベースになっているのはイーサネットです。このイーサネットでは,MACアドレスを宛先として通信します。では,IPアドレスは何のために存在しているのでしょうか。MACアドレスだけでは通信を行うことはできないのでしょうか。 MACアドレスはネットワーク機器に,IPアドレスはコンピュータに割り当てられています。MACアドレスだけでの通信も可能ですが,「どういう経路でどうやって直接MACアドレスを探すのか」という問題にぶつかり,現実的とは言えません。MACアドレスでなくIPアドレスで宛先を決めて送受信するのは,単純にわかりやすくするとか,ユーザが指定できるよ
インフラセキュリティの処方箋 第44回2018年3月~修正できない脆弱性対応、繰り返される歴史、そして「あたりまえ」を実践すること 今月は、時折見られる「開発者と連絡を取れず、修正できない(修正を期待できない)脆弱性」、繰り返される「攻撃」の歴史、そして「あたりまえ」という3つのトピックについて解説します。 「連絡不能案件」扱いされるソフトウェアの脆弱性対処 通常、ソフトウェアに脆弱性がある場合、当該ソフトウェアの開発者に連絡が行き、開発者による脆弱性修正がなされるのが通例と考える方が多いかと思います。実際、情報セキュリティ早期警戒パートナーシップの枠組では、IPAが受付機関となり、JPCERT/CCが調整機関となって、開発者との連絡を取り、脆弱性情報を提供した上で、脆弱性修正および修正版の公開を推進します。 しかし、脆弱性があるソフトウェア開発者との連絡がつかない場合には、このような
ネットワークプログラムとSIGPIPE 「私の書いたサーバが突然死するんです。どうしてでしょうか」という質問を受けることがあります。これは多くの場合、SIGPIPEの処理を忘れていることが原因です。SIGPIPEとは、切断されたネットワークソケットなどにデータを書き込もうとした際に送出されるUNIXシグナルです。特に設定しない限り、プロセスはSIGPIPEを受け取ると強制終了されます。そのため、通信が突然切断される可能性のあるTCPサーバにおいては、SIGPIPEを無視するよう設定する必要があります。 # デフォルトの動作(SIGPIPEの場合はプロセスの終了)に設定 $SIG{PIPE} = 'DEFAULT'; # SIGPIPEを無視するよう設定 $SIG{PIPE} = 'IGNORE'; # SIGPIPEを受信した際に実行するサブルーチンリファレンスを # 設定 $SIG{PI
メーリングリストでもっとたくさん酷い英語を見かけたい。ネイティブじゃない人が英語が上手くなくてと謝る場面がもっと減ってくれたらとも思う。母語ではない第二、第三、あるいは第四の言語を、たとえ熟達していない状態でも、とにかく使ってコミュケーションを図ろうとするのは全く恥じるようなことなんかじゃない。もし、外国語だというのを理由に不安や気後れを感じて重要な貢献を果たさなかったり、FLOSSツールへ貢献する方法やその使い方について質問を控えたりしたのなら、そういうことが恥になるんだ。 訳注 FLOSSは Free/Libre and Open Source Software の略。フリーソフトウェアとオープンソースソフトウェアとをまとめた言葉 オープンソースの美点の一つは多国籍ということ。それも“るつぼ”と見なしうる物事のうち最も真に“るつぼ”らしい多国籍なんだ。数百万もの人たちが英語で運
こんにちはこんにちは ! ! はまちや2です! 今日からぼくと一緒にWebプログラミングのセキュリティについて、ちょっぴり勉強してみませんか!今回はHTTPがどんなやりとりをしているのか、簡単におさらいしてみましょう!
ソースがドキュメントだ。バグも完全に記述されている。 ――まつもとゆきひろ[1] はじめに 本連載ではアジャイル開発を「アジャイルに開発する人たち(アジャイル開発者)が開発するからアジャイル開発」と考え、アジャイル開発者に必要なスキルを磨くための習慣を紹介しています。 これまでの3回を費して紹介した「フィードバックを重視する」「仕組みを育てる」「スケール間に連続性を築く」といった習慣は、チームによるシステム開発の現場でアジャイルにプログラムを書くことを重視したものでした。 しかし、これでは開発対象となるシステムを構成する2つの要素のうち主に1つしか説明していません。2つの要素とは、プログラムとドキュメントです。今回は、これまであまり触れてこなかった、2つの要素のうちの1つであるドキュメントに関する習慣を紹介します。 そのためにまず、アジャイル開発者にとってのドキュメントの位置づけを説明
連載第2回目は、なんと夫婦同士の対談です。お相手は、はてなダイアリーやはてなブックマークをはじめ、エンジニアのみなさんにも人気のサービスを次々とリリースしている(株)はてなの代表取締役社長 近藤淳也さんと、その奥様であり、はてなで広報、総務、経理などのお仕事をされている令子さん。それを迎え撃つのは、小飼弾さんとその奥様、直美さんです。いったい、どんなGeek話が飛び出すのでしょうか?(文中、敬称略) なお、この対談の模様は、近藤淳也さんの日記でも、podcastで音声が公開されています。 編集部注) 本対談は2006年5月に行われたものです。 撮影:武田康宏 夫婦でも情報共有 弾:淳也さんは社内の情報共有を強く意識されていますが、夫婦間の情報共有はどうですか? 令子:彼は、夫婦のことは夫婦でちゃんと情報共有しようっていうスタンスだったんですけれど、私は個人は個人なんだから、知らない
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く