TokyoWomen.rb #1 招待講演 https://tokyowomenrb.connpass.com/event/342573/

はじめに:本記事の趣旨 以下、C言語、Linux環境を前提とする。 複数のファイルディスクリプタへのイベントを管理したいとき、例えばselect()を使用する方法があるが、噂では1これはかなり遅く(O(n))、性能を求めるならepollインターフェースを使うのが良い、とのことらしい。 しかしながら、 epollインターフェースは各関数が何を行なっているのかがよく分からない。故にどこで何を呼べば求めている処理を実現できるのかが明瞭でない。 以下では、 select()の使用法と対応させながら、epollインターフェースの使用法を簡明にまとめる。 よって、前者の挙動をある程度理解していることが前提となる。 また、例として、 listen用のソケットディスクリプタと、各クライアントと接続されたソケットディスクリプタ群とを管理するコードを使用 する。その為、ソケット通信に関する最低限の知識も前提と
C 言語 : HTTP サーバーとクライアントをつくるC 言語: libevent を使って HTTP クライアントをつくるC 言語: OpenSSL を使って HTTPS クライアントをつくるC 言語: OpenSSL を使って HTTPS サーバーをつくるC 言語: libevent を使って HTTPS サーバーをつくるC 言語: libuv を使って TCP echo サーバーをつくる Linux Socket Programming の著者が公開しているサンプルコード (ssl_server.c)をもとに書いた。 オンラインのドキュメントは10年ぐらい前のものが多く、サンプルコードで型の指定が不適切なものがあったりしてサンプルコードを探すのに苦労した。出版された教科書を読む必要がありそうだ。 OpenSSL の初期化でどの関数を呼び出せばよいのかで少し悩んだ。Wikibook と
Things will never be the same again after the dust settles. And yes, I’m talking about Linux. As I write this, most of the world is in lockdown due to COVID-19. It’s hard to say how things will look when this is over (it will be over, right?), but one thing is for sure: the world is no longer the same. It’s a weird feeling: it’s as if we ended 2019 in one planet and started 2020 in another. While
In this course, you will learn how to work with the UDP and TCP internet protocols in real-world scenarios. You will apply your skills to build small, fun networking applications in Rust — right in your browser! No previous knowledge of network programming is required, but we assume that you are familiar with Rust syntax. If you’re not, that's fine too! You can read The Rust Book and learn by prac
特別講座 ネットワークプログラミング ( FWをつくろう ) ファイアウォール(FW)とは,「ある特定のコンピュータネットワークとその外部との通信を制御し、内部のコンピュータネットワークの安全を維持することを目的としたソフトウェア」である. つまり,特定のパケットを破棄(または通過)させる制御を行うソフトウェアである. 特定のパケットとは, 特定ポートにアクセスするパケット 特定のIPアドレスからのパケット 特定の内容(パターン)をもつパケット などがある. 今回は,以下の図のような構成のネットワークにFWを設置する環境を想定する. 今回のFWはルータの機能はなく,あくまでPCとルータ間のパケットを監視し,不要なデータを遮断する機能を持つ. FWソフトウェアを作成するには, パケットの中身を見る パケットの転送の可否を行う 2つのプログラミングが必要になる. ここでは,上記の2つのプログラ
よく C10K 問題とかいって epoll(7) の話が出てきて select(2) 遅いね poll(2) 遅いねってなるんだけど、正直なところ、これらのシステムコールを実際に使ってコードを書いてみたひとはどのくらいいるのだろう。ましてや eventpoll が何やってるか知っている人はそんなに多くないんじゃないだろうか。もう O(n) だの O(1) だのって煙に巻かれるのもうんざりだ。 というわけで、2.6.26 の fs/eventpoll.c のコードを読んでみた。正直 Linux カーネルにすごく詳しいわけでもないので、誤りがあったら適宜突っ込んでもらえると幸いです。 前提知識として VFS モジュールがどうなってるかとかは LinuxのFSモジュールを書いてみる LinuxのFSモジュールを書いてみる (その2) のソース中のコメントを追ってもらえればと。 登場する構造体 e
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く