<

** 2022/05/15 追記 ビルドするホストにはx86_64のubuntu 20.04を使いましょう。 現在動いているカーネルのバージョンを確認する $ cat /proc/version Linux version 4.9.253-tegra (buildbrain@mobile-u64-5434-d8000) (gcc version 7.3.1 20180425 [linaro-7.3-2018.05 revision d29120a424ecfbc167ef90065c0eeb7f91977701] (Linaro GCC 7.3-2018.05) ) #1 SMP PREEMPT Sat Feb 19 08:59:22 PST 2022
1. 細々とした予備知識 1.1 Qemuのデバイスエミュレーション 1.2 QemuのCPUエミュレーション 1.3 Qemuのスレッド 2. 追加のI/OスレッドとAioContext 2.1 追加のI/Oスレッド 2.2 AioContext 2.3 Big Qemu Lock 3. AioContextの各種イベント処理 3.1 AioHandler 3.2 event_notifier 3.3 タイマー、Bottom half 3.5 スレッドプール 執筆者 : 箕浦 真 こういう 仕事をしていると、ときどきQemuの仕組みや内部動作をお客様に説明する必要があることがあるが、そういう時に「Qemuの〜についてはここを見てね」と言えるような文書があるといいなぁと思って自分で作ってみることにした。 1. 細々とした予備知識 1.1 Qemuのデバイスエミュレーション Qemuはコンピ
ruby の popen に関して。 ruby からIO.popenでプロセスを呼び出すときに、「〇〇」が取れない。というブログがいっぱい見つかって、そうじゃないだろ。という気分になったなったのでメモを残すことにする。 そして、Qiitaなどの記事を丸コピした「いかがでしたでしょうか」も溢れているので、検索でちょっと困った。 私は、プロセス起動を頻繁にやっているので、IO.popen を使っているが、本当にわかりにくいので、面倒だけどいまさらだけど、まとめておく。 IO.popen でプロセス起動 IO.popen はプロセスを起動して結果を取得できる。 Rubyは新しく「プロセス」を起動する。文字列で指定された場合は、シェル経由で、配列で指定された場合は子プロセスで起動する。(ただし、文字列で渡してた場合でも単純なコマンドは子プロセスで起動する。リダイレクトやパイプが含まれるコマンド文字
この記事は OIC ITCreate Club Advent Calendar 2018 15 日目が空いてたので、そのつもりで書いている記事です。 https://adventar.org/calendars/3072 Linux には、以下のような機能が標準で実装されており、簡単に使用可能です。 Cisco のような機器には性能が及ばないですが、一通りの基本的な名ネットワークはもちろん、更に高度なネットワークも気軽に組むことが出来ます。 これらの機能を組み合わせて Docker 等のコンテナエンジンのネットワーク技術は構築されています。 iptables ファイアウォール・NAT(SNAT/DNAT/Masquerade)等の機能を提供 主に、IP と TCP/UDP 等のプロトコルに対して設定が書ける iptables コマンドで操作が可能 Bridge L2 なブリッジインターフェ
Unix系のOSをルータにしている場合に、NTT東日本が提供しているフレッツ光ネクスト(NGN)でIPv6を運用する際のTipsをまとめた。恐らくNTT西日本が提供しているフレッツ光ネクストでも同じような設定が利用できるものと思われる。また、今回はOSにUbuntu12.04を使用しているが、wide-dhcpv6-clientが利用できる環境であれば(おそらくBSD系でも)通用するものと思われる。 まず最初に確認すべき事はひかり電話の契約の有無である。ひかり電話が契約されている場合とされていない場合ではNGN側の動作が変わってくる。この記事ではひかり電話を契約している環境について説明する。ひかり電話無しの場合については後日改めて纏める。 ひかり電話を契約している場合、NGN網からは/48のプレフィックスをDHCPv6-PDで払い出してもらうことが出来る。ただし、これはISPのIPv6オプ
はじめに 利用した環境 cgroup の階層構造 例:CPU やメモリの制限 例:PID 数の制限 例:CPU コアの排他的割り当て まとめ 執筆者 : 山下雅喜 はじめに cgroup とは、Linux カーネルの機能の1つであり、プロセスやスレッドが利用するリソースの制限や分離を行うための機能です。 cgroup は名前空間の機能と共に、Linux コンテナの根幹を成す技術の1つでもあります。 Kubernetes において、名前空間は PID 名前空間、ネットワーク名前空間、マウント名前空間などで利用者の目に触れやすい存在ではありますが、cgroup は相対的に目に付きにくいもののように感じています。 そこで今回は、Kubernetes のいくつかの機能を例に挙げ、cgroup がどう利用されているか見ていきます。 利用した環境 利用したソフトウェアおよびバージョンは次の通りです。
Namespaces in operation, part 1: namespaces overview The Linux 3.8 merge window saw the acceptance of Eric Biederman's sizeable series of user namespace and related patches. Although there remain some details to finish—for example, a number of Linux filesystems are not yet user-namespace aware—the implementation of user namespaces is now functionally complete. The completion of the user namespaces
はじめに 学校で習わないが(習う学校もある)、現実に必要になるプログラミング技術に、低レイヤプログラミングなどと呼ばれるものがある 厳密な定義は聞いたことがないし、おそらく存在しないとは思うが、大体のみんなの共通認識として、 「高級プログラミング言語を使わないプログラムを書き、OSで抽象化されないデバイスの機能を使う」といったような認識があると思う。 筆者の経験から言わせてもらうならば、低レイヤプログラミングに関する知識は、プログラミングにおいてあらゆる場面で、常に、少しずつ役立てられる知識だと言えると思う。 普段はRubyやPHPなどを書いてる人であったとしても、メモリが足りなくなった場合や、デバッガを使っている場合、性能が足りなくなった場合など、 厳しい環境におかれた時に低レイヤプログラミングに関する知識が必ず役に立つ場面が来ると信じている。 また、役に立つかどうかは置いておいても、「
Noctua、MTTF 15万時間の5V駆動ファン「NF 5V」シリーズ 2018.07.05 10:31 更新 2018.07.04 配信 RASCOM Computerdistribution(本社:オーストリア)が展開するNoctuaブランドは2018年7月4日(現地時間)、5V駆動に対応する汎用ファン「NF 5V」シリーズを発表した。サイズは40mm~200mmで、固定回転モデルとPWMモデルが用意される。 NF-A20 5V 市場想定売価29.90ドル/ユーロ(近日発売) https://noctua.at/en/nf-a20-5v NF-A20 5V PWM 市場想定売価29.90ドル/ユーロ(近日発売) https://noctua.at/en/nf-a20-5v-pwm NF-A12x25 5V 市場想定売価29.90ドル/ユーロ(近日発売) https://noctua.
「カーネルのコードがよくわからない。Linuxカーネルに関する本を読んでもいまいちしっくりこない。」 から、「読めば理解できそう..!」 になるまでにやったことのまとめ。 はじめに 低レイヤの話がわかるようになりたかった。 カーネルの中身が知りたかった。 とりあえず本を読もうと思い詳解 Linuxカーネル 第3版を読んだが知識がなさ過ぎてよくわからない。 知らない用語だらけで都度調べればなんとなくはわかる気もするが、いまいち頭に入ってこない。 今思うとそもそもCPUの話なのかカーネルの話なのかさえよくわからない状態で読んでいたような気がする。 そんな状態を克服するためにやったことをまとめておく。 学習前 学習前の自分の知識はこんな感じだった。 知っていた データ構造とアルゴリズム 論理回路 C言語(研究室で数値計算に使える程度。構造体やポインタくらいならわかる。) よく知らなかった OSが
〓技術書典8で販売予定〓 技術書典8(Day2 う13)では、本書の紙版を《特別価格:1000円》で販売する予定です(部数限定)。 ---------- カーネル開発の第一歩 "Hello world!"を表示するカーネルモジュール から始めて、ステップバイステップでLinuxカーネル開発を体験できます。 ・PDFファイル ・B5判、カラー71ページ 《サンプル》 https://drive.google.com/file/d/1o-WjFc_IMav85LsACT2GleIGugQQed9F/view?usp=sharing ---------- 2017年04月09日 初版第1刷(技術書典2) 2017年10月22日 初版第2刷(技術書典3) 2018年04月15日 初版第3刷(技術書典4) 2018年10月05日 第2版第1刷(技術書典5、Ubuntu 18.04に対応) 〓技術書典
About us Founded in 2008, Phusion creates top of the line server software to power businesses like Apple and Intercom. When building Docker containers, you should be aware of the PID 1 zombie reaping problem. That problem can cause unexpected and obscure-looking issues when you least expect it. This article explains the PID 1 problem, explains how you can solve it, and presents a pre-built solutio
Web系の会社にいると,仕事用のPCとしてMacを支給されることが多いと感じている.例にもれず俺も会社ではMacBook Proを使っていたのだけれど,最近Macが使い物にならないくらい遅くなってきた. そもそもそんなに新しいMacではないというのはあるんだけれど. もはやローカルでの開発はほぼDocker化してしまっているので,なにをするにもDockerを起動する必要がある. しかし,Docker for Macは遅い.とくにvolume mountが遅すぎて,webpackなんか走らせたらお茶を入れに行くくらいの猶予が発生する. ---追記--- webpackだけならdockerじゃなくていいじゃんと言われたので,一応弁明しておくと,webpack以外もあります. DjangoとかElasticsearchとかElasticsearchとかlocalstackとかredisとかDja
2019-05-02 TL;DR IPVSはデフォルトでconntrack(標準のconnection tracking)を利用しない そのせいでIPVSに処理させるパケットをNATしたりすると期待通り動かないことがある 必要があれば /proc/sys/net/ipv4/vs/conntrack (net.ipv4.vs.conntrack) を設定しよう 背景 iptablesの DNAT targetと IPVS(LVS/NAT構成)を共存させると上手く行かない PREROUTING chainにおいて REDIRECT target によりポート番号をIPVSのvirtual serviceのものに変換するように設定した場合, REDIRECTされるポートに対し接続すると, 戻り通信(SYNに対するSYN+ACK)の送信元ポートがvirtual serviceのものになる(期待され
Macvlan and ipvlan are Linux network drivers that exposes underlay or host interfaces directly to VMs or Containers running in the host. In this blog, I will cover basics of macvlan and ipvlan, compare macvlan and ipvlan to Linux bridge and sub-interfaces and also show how to create these interfaces in Linux system. In the next set of blogs, I will cover how macvlan and ipvlan interfaces are used
Linux has rich virtual networking capabilities that are used as basis for hosting VMs and containers, as well as cloud environments. In this post, I will give a brief introduction to all commonly used virtual network interface types. There is no code analysis, only a brief introduction to the interfaces and their usage on Linux. Anyone with a network background might be interested in this blog pos
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く