タグ

kernelに関するindicationのブックマーク (58)

  • Linux kernel coding style — The Linux Kernel documentation

    Linux kernel coding style¶ This is a short document describing the preferred coding style for the linux kernel. Coding style is very personal, and I won’t force my views on anybody, but this is what goes for anything that I have to be able to maintain, and I’d prefer it for most other things too. Please at least consider the points made here. First off, I’d suggest printing out a copy of the GNU c

    indication
    indication 2021/06/03
    MicroSoftで不覚にも…
  • パフォーマンスの最大化 - ArchWiki

    この記事では、知覚または計測できるシステムパフォーマンスの向上を最終目的として、パフォーマンスに関連する基的なシステム診断、及び、リソース消費量の削減やシステム最適化のための手順に関する情報を提供しています。ゲーミングおよび低レイテンシに特有のその他のアドバイスは ゲーム#パフォーマンスを向上させる も参照してください。 基 システムを知る システムをチューンするには、全体のスピードを下げているボトルネックやサブシステムに狙いを定めるがベストな方法です。システムの仕様を知ることは、それらを特定することに役立ちます。 (LibreOffice や Firefox などの) 巨大なアプリケーションを同時に動作させたときにコンピュータが遅くなる場合、RAM の容量が十分であるか確認してください。以下のコマンドを使って、"available" 列の値を確認してください: $ free -h 起

  • SSDOptimization - Debian Wiki

    Translation(s): none This page is about optimal set up of an SSD (Solid State Drive). This page should be kept clean enough for beginners to get the most basic idea. Note that some of the configuration improvements listed below happen automatically today for new installations. WARNING Some firmware versions on some SSD models have bugs that result in data corruption when used in certain ways. For

  • Linux Kernel Teaching — The Linux Kernel documentation

    Linux Kernel Teaching¶ This is a collection of lectures and labs Linux kernel topics. The lectures focus on theoretical and Linux kernel exploration. The labs focus on device drivers topics and they resemble "howto" style documentation. Each topic has two parts: a walk-through the topic which contains an overview, the main abstractions, simple examples and pointers to APIs a hands-on part which co

  • Linus Torvalds Doesn't Recommend Using ZFS On Linux - Phoronix

    Linus Torvalds Doesn't Recommend Using ZFS On Linux Written by Michael Larabel in Linux Storage on 9 January 2020 at 04:49 PM EST. 255 Comments Linux kernel creator Linus Torvalds doesn't recommend using ZFS On Linux at least until Oracle were to re-license the code to make it friendly for mainline inclusion. But even then he doesn't seem turned on by the ZFS features or general performance. Derai

    Linus Torvalds Doesn't Recommend Using ZFS On Linux - Phoronix
    indication
    indication 2020/01/10
    ZFSってCDDLじゃなくなったのか?! それでもSolarisPortingLayerしか触れないのは確かに辛そう。ただ、splだけの提供は拒否られてるのかな
  • LinuxのBPF : (1) パケットフィルタ - 睡分不足

    はじめに BPFの基礎 BPFの構造 BPFでのフィルタリング レジスタマシン LinuxでのBPF BPFを利用したパケットフィルタリング libpcapとBPF ここまでのまとめ 参考文献 その他参考URL はじめに BPFはBerkeley Packet Filterの略で,1993年に効率的なパケットフィルタリング手法として提案されました[1] *1. BPFの構成要素は大きく2つあって,一つがネットワークからパケットをキャプチャする部分,そしてもう一つがキャプチャした パケットをフィルタリングする部分です.BPFといった場合,後者のフィルタリング機構だけを指すことも多いです. FreeBSDなどのBSD系のOSでは/dev/bpf*という特別なデバイスがあって,このBPFを利用することができます.また, Linuxでもパケットフィルタリング(Linux Sokcet Filter

    LinuxのBPF : (1) パケットフィルタ - 睡分不足
    indication
    indication 2019/06/01
    素晴らしい資料
  • linux systemにおけるinitの最期

    Linux Advent Calender 2018の18日目です。 元々の予定はボツになった!?ので ちょっと古い話になります。 7日目のsystemd理解のヒント - systemdの概念と歴史と相反するような記事です。 古い情報も必要としている組込もんもいるので、その助けとなりましたら幸いです。 initとは PID=1として、カーネルの初期化が終わって初めて生成されるプロセスです。 ユーザランドで必要なファイルシステムのマウント・システム設定・サービス(デーモン)やプロセス起動を行います。 kernel parameterに init=でinitコマンドを指定することができます。省略すると /sbin/initなどが参照されます。 init=/etc/preinit ここでは 組込装置を前提として、busyboxのinitを想定します 設定ファイル initが起動すると、以下のファ

    linux systemにおけるinitの最期
    indication
    indication 2018/12/18
    アーキテクチャがリブートを対応していないケースがあるのか。linuxのソースはコメントがキレイ(ドライバを除く)
  • How to ZFS · GitBook (Legacy)

    Centralize your team’s knowledge, sync with your codebase, and create beautiful documentation your customers and teams will love

    How to ZFS · GitBook (Legacy)
    indication
    indication 2018/05/24
    ブートローダーから、cgroupsまで、主要な機能の説明がある。よい入門書。些細な問題だけど、日本語なし
  • Linuxカーネルソースの減量

    - Linux consists of about 18 million lines of code - Proving the code of core functions are not so big by deleting non-core code

    Linuxカーネルソースの減量
    indication
    indication 2018/03/24
    ドライバー多すぎる。しかしながら、動かせる状態で削るのはすごい。340ks
  • mdadmの検証中に発見したバグと今後の取り組み - Cybozu Inside Out | サイボウズエンジニアのブログ

    はじめに こんにちは、技術顧問の武内です。 Linuxにはmultiple devices(以下md)と呼ばれるソフトウェアRAID機能があります。この機能はmdadmというツールを使って管理します。サイボウズのSREチームは、Ubuntu16.04のmdadmを検証をした際に次のような2つのバグを発見しました。 mdのresync*1時に使うwrite intent bitmap*2(以後bitmapと表記)のサイズが所定量を超える場合、mdを構成するストレージデバイスに不良セクタを検出した際にbitmapを破壊する mdのサイズ拡張時にbitmapの付与に失敗する これに関して、エントリでは、次のようなことをお伝えしたいと思います。 これらのバグが具体的にどういうものなのか サイボウズはこのよう場合に、自分たちが使うものだけを修正するのではなくupstreamのOSSを修正するという

    mdadmの検証中に発見したバグと今後の取り組み - Cybozu Inside Out | サイボウズエンジニアのブログ
    indication
    indication 2017/10/30
    mdadmの読み方がわからなくていつもマダムと読んでしまう。この現象をよく突き止めることができたなと、感心する。
  • Linux Kernel勉強会 2017年9月 (2017/09/23 13:00〜)

    発表枠について テーマに沿った内容での発表をお願いいたします。 持ち時間は20〜40分のあいだで、お好きな時間でかまいません。(質疑応答、発表準備を含む) 希望時間を申し込みの際のコメントにご記入ください。 また、知識の蓄積と後学のため、発表資料はできるだけ公開・共有していただきますよう、ご協力をお願いいたします。 こちらのイベントページおよびまとめサイトへ追加しますので、管理者へURL等をご連絡ください。 聴講枠について 発表しない聴講のみの方の参加枠です。 ワークショップや宿題がある場合は、グループで作業していただく場合もあります。 LT枠について 開催1週間前までに発表枠が埋まらなかった場合や時間があまったときは、LT枠を設定いたします。 LTはテーマに沿ってなくても、Linux Kernelに関係ありそうな内容でしたら何でもOKです。 持ち時間は10分です。(質疑応答、発表準備を含

    Linux Kernel勉強会 2017年9月 (2017/09/23 13:00〜)
    indication
    indication 2017/09/23
    近場で面白そうな勉強会があったんだ…参加できなくて残念。kernelって、/kernelなのかな
  • Raspberry Piのブートプロセスメモ - φ(・・*)ゞ ウーン カーネルとか弄ったりのメモ

    Raspberry PiのLinuxの起動プロセスをぐぐったらStack Exchangeでトピック「How does Raspberry Pi boot?」があったのでメモ 「how-the-raspberry-pi-boots-up」と「Raspberry PI bare metal Part 1: The Boot Process」も参考に。 これによるとカーネルが起動するまでのブートプロセスは3段階に分かれている。 Raspberry Piに電源が入った時はGPUが起動しARM coreはoff、SDRAMもdisabledな状態 GPUは1段階のブートローダーを起動。このブートローダーはSoCのROMにある。ブートローダーはSDカードを読み込んで2段階目のブートローダー(bootcode.bin)をL2キャッシュに読み込みと実行をする bootcode.binはSDRAMを有効に

    Raspberry Piのブートプロセスメモ - φ(・・*)ゞ ウーン カーネルとか弄ったりのメモ
  • OSカーネルを0から作り始めてみた - Qiita

    1. 概要 OSカーネル[^1]をフルスクラッチで(0から)作り始めてみました。 稿では下記について記載します。 カーネルを自作し始めた背景 カーネル自作における方針 稿執筆時カーネルの機能概要 カーネルの実行方法 プロセスを起動してみる 今後の課題 2. 背景 私がカーネルを自作し始めた理由は次の2点です。 1.コンピュータがどの様に動いてるのか知りたかった 2.使用しているOSに不満があった 2.1 コンピュータがどの様に動いてるのか知りたかった かれこれ10年以上前に遡りますが、私が大学に入学した頃、VisualBasicやBasic、Cなどの言語を使って簡単なソフトウェアを作ることが出来ましたが、どうして簡単なコードでウィンドウが表示できるのか、どうしてprintf文を書けばコンソールに文字が出力できるのか、コンピュータはいったいどんな風に動いてるのか全く分からず、不思議で仕方

    OSカーネルを0から作り始めてみた - Qiita
    indication
    indication 2017/03/23
    タスクスイッチを実装しちゃうのがすごい。
  • linuxカーネルソースの統計情報 - Qiita

    はじめに 記事はlinuxカーネルのソース分析によって、このソフトウェアの様々な特徴を可視化します。ソースの総行数といったありがちなものから、1つのバージョン内のrelease candidate(rc)ごとのパッチ数の推移やサブシステムごとのデータなども出しています。 linuxには、v2.6.x, v3.x, v4.xで表す、Linuxのオリジナル開発者であるLinus Torvalds氏がリリースするmainlineカーネル(通常、単にLinuxと言えばmainlineカーネルを指す)があります。このうち、データ採取した範囲はgitで追える範囲のv2.6.12〜v4.10までです。ものによってはv4.0〜v4.10までの範囲です。 全体の傾向 総行数 行数は*.[chS]というパターンにマッチする行の数を使いました。v2.6.12では600万行そこそこ(それでも凄いのですが)だった

    linuxカーネルソースの統計情報 - Qiita
    indication
    indication 2017/03/10
    面白い統計。ドライバのジャンルが気になる
  • Linux スケジューラーのコア実装とシステムコール - Qiita

    はじめに これは Linux Advent Calendar 2016 の第 11 日目の記事です。Linux のタスクスケジューラーのソースコードや関連するドキュメントなどを読んで分かったことをまとめました。とても長いです・・・ はじめにスケジューラーのアーキテクチャと重要な概念を紹介し、その後はスケジューラーコアとシステムコールの実装について分かったことを延々と述べます。調べきれなかったことや分からなかったことは TODO に残したので、コメント欄とかツイッターで教えてもらえると嬉しいです。間違いの指摘も大歓迎です。 ちなみに私が読み始めたきっかけは、スケジューラーのアーキテクチャ、スケジューリングアルゴリズム、スケジューリングアルゴリズムの切り替え方、nice 値やプロセッサアフィニティがスケジューリングに及ぼす影響、プリエンプションの流れ、マルチプロセッサにおけるタスクのロードバラ

    Linux スケジューラーのコア実装とシステムコール - Qiita
    indication
    indication 2016/12/12
    本文もコメントも素晴らしい。マルチコアにおいての優先度は気になる
  • Linux Insides : カーネル起動プロセス part4 | POSTD

    64ビットモードへの移行 Kernel booting process もパート4になりました。4回目の今回は、 プロテクトモード での最初の一歩についてご紹介します。CPUがサポートする ロングモード 、 SSE(ストリーミングSIMD拡張命令) 、 ページング方式 、そしてページテーブルの初期化やロングモードへの移行のお話しです。 注:このパートでは、アセンブリ言語のソースコードが頻出しますので、知識がない方は、事前に参考書を読むなどして理解を深めておいてください。 前回の パート では、 arch/x86/boot/pmjump.S 内にある32ビットのエントリーポイントにジャンプするところで終了しました。

    Linux Insides : カーネル起動プロセス part4 | POSTD
    indication
    indication 2015/12/11
    64版のシーケンス。再配置できるのには驚いた。
  • How to understand Linux kernel source code for a beginner?

    Stack Exchange Network Stack Exchange network consists of 183 Q&A communities including Stack Overflow, the largest, most trusted online community for developers to learn, share their knowledge, and build their careers. Visit Stack Exchange

    How to understand Linux kernel source code for a beginner?
    indication
    indication 2015/11/22
    ソースを理解する手立て
  • Linux Graphics Drivers: an Introduction

    Linux Graphics Drivers: an Introduction Version 3 Stéphane Marchesin <stephane.marchesin@gmail.com> March 15, 2012 2 Contents 1 Introduction 7 1.1 Book overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 1.2 What this book does not cover . . . . . . . . . . . . . . . . . . . . . . . . . 8 2 A Look at the Hardware 9 2.1 Hardware Overview . . . . . . . . . . . . . . . . .

  • Linux のページテーブルのサイズの見方と見積式 - ablog

    Linux Kernel 2.6 (x86-64) でのページテーブルのサイズの確認方法と見積式を調べてみた。 あっているか自信のないところもある&まだ書きかけ。 ページテーブルのサイズの見方 OS全体のページテーブルのサイズ $ cat /proc/meminfo MemTotal: 16158544 kB MemFree: 13134056 kB (中略) PageTables: 34428 kB ★ 34MB プロセス毎のページテーブルのサイズ $ cat /proc/10225/status # 10255 は PID Name: zsh State: S (sleeping) Tgid: 10225 Pid: 10225 PPid: 10222 (中略) VmPTE: 124 kB ★ 124KB ページテーブルのサイズの見積式 見積式 (プロセスが使用している物理メモリサイズ

    Linux のページテーブルのサイズの見方と見積式 - ablog
  • linux-insides/syscall-2.md at master · 0xAX/linux-insides · GitHub

    System calls in the Linux kernel. Part 2. How does the Linux kernel handle a system call The previous part was the first part of the chapter that describes the system call concepts in the Linux kernel. In the previous part we learned what a system call is in the Linux kernel, and in operating systems in general. This was introduced from a user-space perspective, and part of the write system call

    indication
    indication 2015/09/01
    システムコールについて