並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 597件

新着順 人気順

linux kernel githubの検索結果1 - 40 件 / 597件

  • Docker一強の終焉にあたり、押さえるべきContainer事情

    章立て はじめに Docker・Container型仮想化とは Docker一強時代終焉の兆し Container技術関連史 様々なContainer Runtime おわりに 1. はじめに Containerを使うならDocker、という常識が崩れつつある。軽量な仮想環境であるContainerは、開発からリリース後もすでに欠かせないツールであるため、エンジニアは避けて通れない。Container実行ツール(Container Runtime)として挙げられるのがほぼDocker一択であり、それで十分と思われていたのだが、Dockerの脆弱性や消費リソースなどの問題、Kubernetes(K8s)の登場による影響、containerdやcri-o等の他のContainer Runtimeの登場により状況が劇的に変化している。本記事では、これからContainerを利用したい人や再度情報

      Docker一強の終焉にあたり、押さえるべきContainer事情
    • 日米OSDN離合集散、苦闘の21年史

      さて、ついに退職エントリだ。私は米国のオープンソース・ムーブメントを日本で再現するためのコアを作るために民間企業へやってきたはずだった。それから21年、随分と長い航海になってしまったが、結局様々な尻拭いを続けてきたという感慨ばかりが起きてくる。一つの歴史として書き残すいいタイミングなのでその苦闘を振り返っておこう。 なお、長く付き合いが続いてしまう米国側法人は下記のように名称が変化している。なるべく頭に米国と付けて日本側法人と区別しやすいように記述するが、突然名称が変わったりするので注意してほしい。多くがもはや消滅した法人のことなので、さすがに一気読みするような酔狂な人はほぼいないと思うが。 VA Research      Andover.net ↓         ↙︎ (VAによる買収) VA Linux Systems ↓        ↘︎ (Andoverから社名変更) VA

        日米OSDN離合集散、苦闘の21年史
      • 私のソフトウェア開発を一変させてしまった2025年のAIエージェントをふりかえる

        2023年から段階的にAIを開発フローに組み込み、2025年は試行錯誤とツールの大きな変化、そしてエージェント化を経て、私のソフトウェア開発の進め方は明確に変化しました。 ここで言う「変化」とは、単に作業が速くなった、便利になったという話ではありません。 より具体的には「コードをタイピングする時間よりも、間接作業の比重と抽象的な思考・ロジックが増えた」という意味での変化です。 とりわけ深刻なのは文字入力回数の増大です。その結果、マイクに向かって話したり、タイピングの練習といったプリミティブな活動を取り入れるようになりました。 この変化は私だけのものではありません。Addy Osmaniは『Beyond Vibe Coding』で「開発者の役割はコードを書くことから、コードを指示すること(directing)へシフトしている」と述べ、アーキテクチャやデザインパターンといったシステム思考への集

          私のソフトウェア開発を一変させてしまった2025年のAIエージェントをふりかえる
        • Linux システムコール 徹底入門

          Linux システムコールについて調べたことをまとめる。システムコールの仕組みを理解すると、 OS とアプリケーションがどのように連携して動いているのかを理解できるようになります。 システムコールは CPU に依存する処理が多いため、 x86_64 に絞ります。 検証環境]# cat /etc/redhat-release CentOS Linux release 8.0.1905 (Core) ]# uname -a Linux localhost.localdomain 4.18.0-80.11.2.el8_0.x86_64 #1 SMP Tue Sep 24 11:32:19 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux ]# cat /proc/cpuinfo | head processor : 0 vendor_id : GenuineInte

            Linux システムコール 徹底入門
          • Linus Torvalds 氏の理想の git 運用と GitHub

            Note 本記事の内容は Linus 氏の発言が人を傷つける場合に筆者がそれを良しと考えるといった意図はございません 少し古い記事になるが、 Linus Torvalds 氏 の GitHub に対する苦言が記事になっていた。 LinuxカーネルにNTFSドライバーが追加、トーバルズ氏はGitHub経由のマージに苦言 - ZDNet Japan Linus 氏が GitHub について苦言を呈するのは今に始まったことではない(後述)が、 別に GitHub のすべてを否定しているわけではない。[1] では一体何が不満なのか。Linus 氏の理想とする git の開発フローを考察した上で、整理してみたい。 Linus 氏の理想 結論からいうと、 「意味あるコミットを作れ」「コミットを大事にしろ」 という思想が伺える。 では 「意味あるコミット」「大事にされたコミット」 とは何なのか。 筆者な

            • Goで解放したメモリが少しずつ戻ってくる現象 - knqyf263's blog

              情報を発信する人のところに情報が集まることを日々実感しているので、Linuxのメモリ管理に特に詳しいわけではないのですが最近遭遇した問題について自分の理解を書いておきます。ざっと調べても同じことを書いている人を見つけられなかったので、公開には意義があると考えています。識者の方がフィードバックをくださると嬉しいです。 ※ AIの出力をベースに書いているのでいつもと少し文体が違います。 背景 要約 調査 再現の難しさ Goアプリケーションの調査 pprofによる分析 GCログの調査 Linuxの調査 Goランタイムの調査 GoのGCとTHP khugepagedの問題 Goランタイムにおける回避策 回避策の削除 max_ptes_noneのデフォルト値について MADV_NOHUGEPAGEをやめた理由 調査内容まとめ 解決策 検証 C言語 Go言語 まとめ 背景 Go言語で書かれたOSSのア

                Goで解放したメモリが少しずつ戻ってくる現象 - knqyf263's blog
              • OSはどうやってP-coreとE-coreを使い分けているのか - Blog posts by @retrage

                Alder Lake以降のIntel CPUでは、P-coreとE-coreの2種類のコアが搭載されている。 P-coreは性能重視、E-coreは省電力重視という位置づけで、OSがうまくこれらのコアを使い分けることで、消費電力と性能の両立が図られている。 ここまでの話は広く知られているが、実際にどのようにしてOSに対してコアの使い分けをさせているのかの実装レベルでの解説は (少なくとも日本語では) ほぼ存在しないようなので調べてみた。 OSから見たP-coreとE-core OSの役割の一つとしてプロセススケジューリングがあり、どのプロセスをいつどれぐらいの期間どのCPUコアで実行するかを決める。OSができるだけ効率よくプロセスをスケジューリングするためには、CPUコアの性能や消費電力の違いを考慮したスケジューリングが必要になる。そこで、Intel CPUではOSに対して次の2つの情報を

                  OSはどうやってP-coreとE-coreを使い分けているのか - Blog posts by @retrage
                • 子どもとインターネット (一般の家庭内 LAN で手軽に子どもの通信を管理する) | IIJ Engineers Blog

                  IIJ ネットワーク本部アプリケーションサービス2部所属。 メールサービスの運用業務に従事し、日々世界の悪と戦う一児の父親。社内 Power Automate エバンジェリスト(自称)。M3AAWG member / openSUSE Users / WIDE Project メンバー。趣味は大喜利。はがき職人。 皆さんは、子どものインターネットの利用ルールってどのように決めているでしょうか。 文部科学省が提唱した GIGA スクール構想が実現され、今や小学校に入学すると 1人 1台、学校からノートパソコンやタブレットが配布される時代です。来年度 4月に小学校へ入学するお子さんをお持ちの親御さん、共通の悩みなのではないでしょうか。 登場人物 私 世界の悪と戦う一児の父親。 家庭内情報システム部 DX 担当部長、(兼)24時間パソコンなんでもお助けサポートセンター・カスタマーサクセス主任、(

                    子どもとインターネット (一般の家庭内 LAN で手軽に子どもの通信を管理する) | IIJ Engineers Blog
                  • 無料でLinuxカーネルの仕組みを学習できる「Linuxカーネルエクスプローラー」

                    Linuxについてマスターしようとすると、避けて通れないのがLinuxカーネルへの理解であると言えます。Linuxカーネルは普通にLinuxに触れた程度では見えてくることのない「縁の下の力持ち」であるわけですが、プログラムである以上は当然ソースコードが存在します。そんなLinuxカーネルのソースコードをわかりやすく表示し、Linuxカーネルの仕組みについて学びを深めてくれるツールが「Linuxカーネルエクスプローラー」です。 Linux Kernel Explorer | reverser.dev https://reverser.dev/linux-kernel-explorer Linux Kernel Explorer | Hacker News https://news.ycombinator.com/item?id=46066280 Linuxカーネルエクスプローラーにブラウザで

                      無料でLinuxカーネルの仕組みを学習できる「Linuxカーネルエクスプローラー」
                    • LinuxカーネルにNTFSドライバーが追加、トーバルズ氏はGitHub経由のマージに苦言

                      印刷する メールで送る テキスト HTML 電子書籍 PDF ダウンロード テキスト 電子書籍 PDF クリップした記事をMyページから読むことができます Linuxの生みの親であるLinus Torvalds氏は、LinuxカーネルにParagon SoftwareのNTFS3カーネルドライバーを導入することに同意し、Linuxカーネル5.15ではNTFSファイルシステムのサポートが強化されることになった。ただし同氏は、カーネルにコードをサブミットする際の手順とセキュリティに関する対応に苦言を呈した。 Paragon SoftwareのNTFSドライバーは、LinuxでWindowsのNTFSドライブを簡単に扱えるようにするものだ。NTFSはFATの後継にあたるMicrosoft独自のファイルシステムで、これによって数十年にわたって続いたNTFSがらみの困難が解消されることになる。 To

                        LinuxカーネルにNTFSドライバーが追加、トーバルズ氏はGitHub経由のマージに苦言
                      • 【2020年】CTF Web問題の攻撃手法まとめ - こんとろーるしーこんとろーるぶい

                        はじめに 対象イベント 読み方、使い方 Remote Code Execution(RCE) 親ディレクトリ指定によるopen_basedirのバイパス PHP-FPMのTCPソケット接続によるopen_basedirとdisable_functionsのバイパス JavaのRuntime.execでシェルを実行 Cross-Site Scripting(XSS) nginx環境でHTTPステータスコードが操作できる場合にCSPヘッダーを無効化 GoogleのClosureLibraryサニタイザーのXSS脆弱性 WebのProxy機能を介したService Workerの登録 括弧を使わないXSS /記号を使用せずに遷移先URLを指定 SOME(Same Origin Method Execution)を利用してdocument.writeを順次実行 SQL Injection MySQ

                          【2020年】CTF Web問題の攻撃手法まとめ - こんとろーるしーこんとろーるぶい
                        • 毎日本番DBをダンプして、ローカルと開発環境で利用して生産性を上げてる話

                          シードデータで動作確認して大丈夫だったのに、本番反映してみたら想定してなかった挙動・エラーが出た😱そんな経験はありませんか。 恥ずかしながら私は今までに何回もありました。機能開発だけじゃなくバッチやマイグレーションなんかでも発生しがちなコレ。またはシードデータで動作確認できても、本番データでも通用するか検証ができないままプルリクを作る、なんていうこともあると思います。今回はこちらを無くす試みをしたお話です。 「もう本番DBで開発しちゃえばいいじゃない」の問題点 この課題を解決するには、極論すると本番DBで開発するしかないのですが、そうなると言うまでもなく以下の問題が出てきます。 レビュー通過してないコードが本番に影響を与える トライ&エラーができない 個人情報をはじめとするセンシティブな情報が開発者の端末に漏れる データ量が多すぎてローカルに持ってこれない しかし言い換えると、これらをク

                            毎日本番DBをダンプして、ローカルと開発環境で利用して生産性を上げてる話
                          • Linux カーネルをバイパスして TCP 通信を 10 倍速くする | IIJ Engineers Blog

                            【IIJ 2023 TECHアドベントカレンダー 12/16の記事です】 この記事について 背景:TCP はコンピュータネットワークの通信において広く利用されているプロトコル・標準化された通信規格です。コンピュータは TCP/IP スタックと呼ばれるようなソフトウェアを実行することで、定められた規格に則って通信を行います。汎用 OS 環境では、TCP/IP スタックは多くの場合、カーネル空間に OS 機能の一部として実装されています。 課題:通信に関するソフトウェアの研究コミュニティでは、そのようなカーネル空間に実装されている TCP/IP スタックは、近年の高速な NIC の性能を十分に引き出すことが難しいという課題が指摘されてきました。 テクニックの紹介:当記事では、近年の研究コミュニティにおいて比較的一般的な高速化テクニックとされている「カーネルをバイパス(迂回)して TCP 通信を

                              Linux カーネルをバイパスして TCP 通信を 10 倍速くする | IIJ Engineers Blog
                            • Linux eBPFトレーシング技術の概論とツール実装 - ゆううきブログ

                              eBPF(extended Berkley Packet Filter)という用語を著者が初めてみかけたのは、2015年ごろだった。最初は、eBPFをその字面のとおり、パケットキャプチャやパケットフィルタリングを担うだけの、Linuxの新しいサブシステムであろうと認識していた。しかし、実際にはそうではなかった。 システム性能の分析のための方法論をまとめた書籍Systems Performance 1 の著者で有名なBrendan Greggが、Linuxのネットワークサブシステムとは特に関係ない文脈で、古典的なシステム性能計測ツールでは計測できないことを計測するツールを作っていた。その計測ツールがeBPFという技術によって実装されていることを知ったときに、eBPFに興味をもったのだった。また、eBPFは、システム性能を調べる用途以外にXDP(eXpress Data Path)と呼ばれるプ

                                Linux eBPFトレーシング技術の概論とツール実装 - ゆううきブログ
                              • eBPFに3日で入門した話 - CADDi Tech Blog

                                はじめに eBPF とはなにか ざっくり概要 「Packet Filter」なのに「Virtual Machine」? eBPFでなにができるか? カーネルイベントのフック ユーザーランドアプリケーションとのやりとり eBPFの主な用途 eBPFが注目される背景 eBPFの仕組み アーキテクチャと処理フロー カーネルモジュールとeBPFの違い eBPFプログラムの作り方 eBPFプログラムを作ってみる 環境の準備 Hello world もう少し複雑なサンプル その他のサンプル HTTPリクエストのダンプ TCP接続先の調査 tcplife dirtop filetop oomkill まとめ eBPFはなにに使えるか 参考サイト はじめに こんにちは、Platformチームの小森です。 eBPF (extended Berkley Packet Filter) について、2022年8月2

                                  eBPFに3日で入門した話 - CADDi Tech Blog
                                • AWS Lambdaを支える技術 - ABEJA Tech Blog

                                  こんにちは、今年の4月に新卒入社でABEJAに入社しました島倉と申します。 現在はプロジェクトマネージャーとして働いています。 これはABEJAアドベントカレンダー2024の9日目の記事です。 なぜFirecrackerが開発されたのか 従来の仮想化技術の課題 Firecrackerの設計要件 Firecrackerとは何か Firecrackerのアーキテクチャ Firecrackerのコード解説とその仕組み microVMの仕組み MicroVMはなぜ軽量なのか 1. 起動プロセスでカーネルを直接ロード 2. mmap による効率的なメモリ管理 3. KVMを利用したvCPU管理 4. Seccompで不要なシステムコールを制限 5. 最小限のVirtIOデバイス まとめ We Are Hiring! 今回は、生成AIの発展が注目されている中あえて、「地味だけど重要な技術」にフォーカス

                                    AWS Lambdaを支える技術 - ABEJA Tech Blog
                                  • Windows 10 + WSL 2 でDocker環境を構築する(Docker Desktop有料化対策) - ecbeing labs(イーシービーイング・ラボ)

                                    はじめに こんにちは、アーキテクトの小林です。 Docker Desktopが有料化することになりましたね。 従業員が251人以上もしくは売上約11億円以上の企業でDocker Desktopを利用する場合に、今後は有料プランが必要ということになりました。 個人的には、これだけのツールがこれまで無料で利用できたことが不思議でしたし、有料化によって母体の経営が安定化してプロダクトの健全な成長とサポートが得られるのであれば、歓迎すべきことかなと思っています。 でも...一応無料で使いつづける抜け道を見つけておきたいと思ってしまうのはエンジニアの性なのでしょうか。こういう小さな障壁をきっかけに週末にやる気が沸いてしまったので、超絶便利だったDocker Desktopに頼らずにWindows 10にDockerの環境を整えてみました。 環境を構築するにあたって、ちょっとしたつまづきもありましたの

                                      Windows 10 + WSL 2 でDocker環境を構築する(Docker Desktop有料化対策) - ecbeing labs(イーシービーイング・ラボ)
                                    • 新しい時代の開発と組織について

                                      こんにちは!逆瀬川ちゃん (@gyakuse) です! 今日はCoding Agentと一緒に開発する時代の「開発の進め方」と「組織のあり方」について、自分の実体験ベースで考えていきたいと思います。 いま何が起きているか Anthropicの2026 Agentic Coding Trends Reportによると、GitHubのパブリックコミットの4%がすでにClaude Codeによるものです。年末には20%を超えるペースだそうです。Anthropic社内ではエンジニアあたりのマージPR数が67%増加しているとのことです。 自分の環境ではChatGPT Pro ($200/月) とClaude Code Max x20 ($200/月) を併用していて、複数の離れたプロジェクトを回して現在daily 90 commit / 30,000行くらいです。負荷最小になりつつあり、最高速のマイ

                                        新しい時代の開発と組織について
                                      • Datadog メトリクスモニター作成入門

                                        Datadog はモニタリング関連の SaaS ではおそらく最も利用されているサービスでしょうが、公式ドキュメントが豊富にある割には何から読み始めれば良いかわかりにくく、慣れるまでの道が険しい印象です。 本エントリーでは、Datadog が既に導入されている組織で、Datadog モニターを使って監視をしたいけど、モニターの設定方法がよくわからないといった方を対象に、メトリクスモニターの作成に焦点を絞って解説していきます。なお、あくまで Datadog の使い方についての解説であり、どのようなモニターを設定すべきかについては触れません。 メトリクスの収集についても触れたかったんですが、力尽きたので、メトリクスの収集については気が向いたら別エントリーを書きます。 アジェンダ メトリクスモニターの作成方法の基本 クエリの定義について クエリの評価期間・評価方法・アラート条件の指定 クエリの結果

                                          Datadog メトリクスモニター作成入門
                                        • AIバグ発見システム「Sashiko」がGoogle社員によって開発される、日本の「刺し子」に由来する名前でLinuxカーネルの未発見バグを次々に検出

                                          Google社員のRoman Gushchin氏がAIを用いたバグ発見システム「Sashiko」を開発して公開しました。Sashikoは主にLinuxカーネルのパッチに含まれるバグを発見するために設計されていますが、Linuxカーネル以外のプロジェクトでも使用することができます。 Sashiko https://sashiko.dev/ Sashikoは日本伝統の刺しゅう技法である「刺し子」にちなんだ名前です。刺し子は「ただの補強(パッチ)ではなく装飾的な意味も持つ技術」であり、「自動化されたパッチレビューでLinuxカーネルを強化する」というシステムの使命を表すのにピッタリだそうです。 SashikoはLinuxカーネルプロジェクトのメーリングリストに送信されたパッチ提出メールをすべてスキャンし、Gemini 3.1 Proを用いてバグの有無を分析するシステムです。Sashikoのウェブ

                                            AIバグ発見システム「Sashiko」がGoogle社員によって開発される、日本の「刺し子」に由来する名前でLinuxカーネルの未発見バグを次々に検出
                                          • Go製ミドルウェアのメモリリークを解決した話 - Mirrativ Tech Blog

                                            インフラ・ストリーミングチームの id:udzura (@udzura)です。今回は、Goミドルウェアのメモリリークを見つけて解決する際に、どのようなプロセスを踏んでいったかを解説します。 Go製のミドルウェアの概要 ミラティブでは、Webアプリケーションのみならず、ミドルウェアに相当する部分についても必要なものは内製しています。その中の一つに、社内で「Radisha」と呼んでいる各種集計とキャッシュなどを行うためのミドルウェアがあります。Radishaは以下のような特徴を備えています。 GET、SET、SETEXなど基本的なRedis互換のコマンドを実装している。そのため、既存のRedisクライアントライブラリから操作が可能である。 ランキング集計、一定時間内のアクセス集計などが行えるよう、Redis にない独自のコマンドを実装している。 高い可用性を志向しており、オンメモリのデータは

                                              Go製ミドルウェアのメモリリークを解決した話 - Mirrativ Tech Blog
                                            • Linuxのソースコード内に「fuck」「クソ」「まぬけ」などの暴言がどれだけ含まれているかをグラフ化、2018年を境に「fuck」の出現頻度が激減

                                              Linux開発プロジェクトのメーリングリストではリーナス・トーバルズ氏による強烈なフレーズを含んだメッセージが飛び交っていることが知られていますが、Linuxのソースコード自体にも「fuck」「crap(クソ)」「idiot(ばか、まぬけ)」といったフレーズが大量に含まれています。Linuxのカーネルのソースコードにどれだけの暴言が含まれているのかを可視化できるウェブアプリ「Linux kernel word count」が話題になっていたので、実際に使ってみました。 Linux kernel word count https://www.vidarholen.net/contents/wordcount/ Linuxの生みの親であるトーバルズ氏は過激な発言が話題になることも多く、Linux開発プロジェクトのメーリングリストにはトーバルズ氏の怒りのメールが頻繁に投じられています。最近では2

                                                Linuxのソースコード内に「fuck」「クソ」「まぬけ」などの暴言がどれだけ含まれているかをグラフ化、2018年を境に「fuck」の出現頻度が激減
                                              • AIバグ発見システム「Sashiko」をJS/TS用にカスタマイズして使ってみる - プププなテクブ

                                                ソフトウェア開発におけるコードレビューは品質保証の要です。しかし、レビューの質はレビュアーの専門知識と集中力に大きく依存し、人間のレビューでは見落としが避けられません。 この課題に対して、Linuxカーネル開発コミュニティから生まれたのがSashikoです。 sashiko.dev 本記事では、Sashikoの仕組みを詳しく解説し、それをJavaScript/TypeScriptライブラリのレビュー向けにカスタマイズしたSashiko JSについて紹介します。 Sashikoとは何か? Sashiko(刺し子)は、Google社員のRoman Gushchin氏が開発したAIを用いたバグ発見システムです。特にLinuxカーネルのパッチをAIで自動レビューします。名前の由来は日本の伝統的な補修刺繍技法で、「布の弱い部分を補強する」という意味が、コードの脆弱な部分を見つけ出すという使命に重ねら

                                                  AIバグ発見システム「Sashiko」をJS/TS用にカスタマイズして使ってみる - プププなテクブ
                                                • マイクロソフトのオープンソースソフトウェアを整理する (1/2)

                                                  21世紀に入ってから、マイクロソフトはオープンソースソフトウェア(以下、OSS)に関わりを始めている。以前は距離を置いていたが、最近ではWindowsに標準搭載されるアプリケーションにもオープンソースで開発されたものが含まれるようになった。たとえば、Windows 11なら、「電卓」や「ターミナル」がオープンソースのプロジェクトで開発されたものだ。 マイクロソフトのOSSは現在ではかなりの数になる。すべてではないが、主要なものはマイクロソフトのサイト(https://opensource.microsoft.com/)に記事があるほか、多くのOSSがGitHub(https://github.com/)にある。GitHubは2018年にマイクロソフトに買収された。 GitHubの各プロジェクトのページにRelasesページがある場合、実行可能なパッケージファイルを直接ダウンロードできる。確

                                                    マイクロソフトのオープンソースソフトウェアを整理する (1/2)
                                                  • VSCode拡張機能『Infracost』を使って TerraformテンプレートからAWS利用費を試算してみた | DevelopersIO

                                                    provider "aws"はprovider.tfで指定しても、各リソースの.tfファイル内で定義しても問題ないです。 使ってみた ここまでの準備でInfracostを使える状態になっているので、手を動かしながら機能を確認していきます。 今回はすべての検証にて、provider "aws"にて東京リージョン(ap-northeast-1)を指定して検証しています。 まずは以下のAWS構成図および.tfファイル構成のコスト試算を行いました。 * provider.tf terraform { required_version = "1.4.5" required_providers { aws = { source = "hashicorp/aws" version = "~> 5.23.1" } } } variable "aws_region" { default = "ap-nort

                                                      VSCode拡張機能『Infracost』を使って TerraformテンプレートからAWS利用費を試算してみた | DevelopersIO
                                                    • WindowsがまたLinuxを取り込む。マイクロソフト、Linuxカーネルが備える拡張機能「eBPF」互換機能をWindowsにもオープンソースで実装へ

                                                      マイクロソフトは、Linuxカーネルが備えている拡張機能である「eBPF」の互換機能を、Windows 10とWindows Server 2016以降で実現するオープンソース「eBPF for Windows」を発表しました。 カーネルのコードを書き換えずに機能を拡張できるeBPF eBPFとは、Linuxカーネルを変更することなく、カーネルの持つさまざまな機能をフックすることにより、カーネルに対してある種の機能拡張を実現するものです。下記は、eBPFのWebサイトにある説明を引用したもの。 eBPF is a revolutionary technology that can run sandboxed programs in the Linux kernel without changing kernel source code or loading kernel modules.

                                                        WindowsがまたLinuxを取り込む。マイクロソフト、Linuxカーネルが備える拡張機能「eBPF」互換機能をWindowsにもオープンソースで実装へ
                                                      • M1 MacでLima + Dockerの環境構築 - くろの雑記帳

                                                        Docker Desktopが一定条件で有償化*1されるので、脱Docker Desktopしてみた。 意外とそんなにハマることもなく環境構築に成功して、Docker Desktopを使っていた時代とほぼ変わらない開発体験が得られました。 Limaを選んだ理由 lima コマンドを打つだけでデフォルトのVM(Ubuntu)のシェルに入れる(もしくはlimaの後ろに付加した文字列がそのままコマンドになる) 標準設定でホストとネットワークを共有する(dockerでportをexportしたらlocalhost:1234でアクセスできる) --net=host が使える 標準設定でMacのホームディレクトリがVMにマウントされてる(嫌だったら設定変えられる, sshfsでマウントされてるだけ) 環境 M1 Mac Book Pro Intelでもいけるはず Lima側の構築 これがDocker

                                                          M1 MacでLima + Dockerの環境構築 - くろの雑記帳
                                                        • RISC-V OSを作ろう (1) ~ブート処理 - VA Linux エンジニアブログ

                                                          はじめに 環境の用意 ブートプログラムを作る 動かしてみる コンパイル QEMU上で起動 GDBで制御 最後に おまけ 執筆者 : 高橋 浩和 ※ 「RISC-V OSを作ろう」連載記事一覧はこちら ※ 「RISC-V OS」のコードはgithubにて公開しています。 はじめに RISC-VはMIPSアーキテクチャの流れを汲む正統派?のRISC CPUです。命令セットはシンプルですが、既存のメジャーなCPUのアーキテクチャと大きな違いがあるわけではありません。 Linux上で利用できるRISC-Vツール群も揃ってきたので、それらを使ってRISC-V用の小さなOSを実装してみようと思います。 最初は欲張らずに単純な実装を目指すことにします。 シングルコアのみサポート 64bitモードを使用 マルチタスキングを実現 タイムシェアリングスケジューリングを実装 割り込みネストは無し 保護機能は使わ

                                                            RISC-V OSを作ろう (1) ~ブート処理 - VA Linux エンジニアブログ
                                                          • Operating System in 1,000 Lines | OS in 1,000 Lines

                                                            Operating System in 1,000 Lines ​Hey there! In this book, we're going to build a small operating system from scratch, step by step. You might get intimidated when you hear OS or kernel development, the basic functions of an OS (especially the kernel) are surprisingly simple. Even Linux, which is often cited as a huge open-source software, was only 8,413 lines in version 0.01. Today's Linux kernel

                                                            • Go Scheduler

                                                              Go Scheduler Contents Introduction Compilation and Go Runtime Primitive Scheduler Scheduler Enhancement GMP Model Program Bootstrap Creating a Goroutine Schedule Loop Finding a Runnable Goroutine Goroutine Preemption Handling System Calls Network I/O and File I/O How netpoll Works Garbage Collector Common Functions Go Runtime APIs Disclaimer This blog post primarily focuses on Go 1.24 programming

                                                                Go Scheduler
                                                              • PerlからGoへのシステム移行のアシスト 〜Perl XSとUnix Domain Socketを活用〜 - Mirrativ Tech Blog

                                                                こんにちは ハタ です。 Mirrativ では 2020年頃から サーバサイドの技術をPerlからGoへのシステム移行 を行っており、2024年現在でもサグラダファミリアのように移行作業は継続しています PerlとGoという2つの環境を同時に運用していますが、 基本的には 新機能は Go で実装 し、 Perlでは積極的に新規実装を行わない というスタイルで進めていました しかし、既存の機能の一部に手を加えたいとなった場合、まだまだ Perl の実装に手を加えることが一定あり、Perl から Go の機能を呼び出したいというニーズが出てきました (配信やギフトといったビジネスの根幹を支えるレガシーな実装においては顕著) そこで PerlXS を利用することで Perl から Go を直接呼び出せるようにできないかと考え検証を進めることにしました Goの -buildmode=c-shar

                                                                  PerlからGoへのシステム移行のアシスト 〜Perl XSとUnix Domain Socketを活用〜 - Mirrativ Tech Blog
                                                                • Linuxシステムの勉強に役立つコマンドの紹介 - セキュアスカイプラス

                                                                  こんにちは、SSTでWeb脆弱性診断用のツール(スキャンツール)開発をしている坂本(Twitter, GitHub)です。 先日の記事では Linux のネットワークインターフェイス名を出発点として systemd や udev について調査しました。 どうやって調査したかというと、 検索キーワードをあれこれ試してみて、見つかった記事から気になるコマンドや設定ファイルがあれば、実際の内容を確認し、 そこからmanページを辿ってパッケージ情報にさかのぼり、パッケージがインストールした他のコマンドや設定ファイルの一覧から構成を把握し、 さらに関連するコマンドや設定ファイルをmanページで辿って・・・ というサイクルを繰り返しました。 時には同じmanページを数度に渡って辿り直し、読み直したりして自分の中の情報を整理しました。 読者の皆様は、そのような時どうされますか? 初めて触るLinuxディ

                                                                    Linuxシステムの勉強に役立つコマンドの紹介 - セキュアスカイプラス
                                                                  • Windows Subsystem for Linux(WSL)のソースコードが公開された (1/2)

                                                                    Build 2025で発表されていたWSLのソースコードが公開 Windows Subsystem for Linux(WSL)のソースコードが公開された。これまで、WSLを実行するのに必要なソフトウェア、特にWin32側のものは公開されていなかった。 5月20日(現地時間)に米国で開催されたBuild 2025イベントで、WSLをオープンソース化することが発表された。その後、2日ほどしてソースコードがGitHubで公開されている。もともとWSL用ディストリビューション開発などの情報を提供していたリポジトリである。 ちなみに以前から、以下の2つに関しては、ソースコードが公開されていた。 ●WSL2用Linuxカーネル(https://github.com/microsoft/WSL2-Linux-Kernel) ●Linux GUIアプリケーションを動作させるためのシステムディストリビュー

                                                                      Windows Subsystem for Linux(WSL)のソースコードが公開された (1/2)
                                                                    • Building a tiny Linux from scratch

                                                                      Last week, I built a tiny Linux system from scratch, and booted it on my laptop! Here’s what it looked like: Let me tell you how I got there. I wanted to learn more about how the Linux kernel works, and what’s involved in booting it. So I set myself the goal to cobble together the bare neccessities required to boot into a working shell. In the end, I had a tiny Linux system with a size of 2.5 MB,

                                                                        Building a tiny Linux from scratch
                                                                      • Linuxで動くNICドライバの開発をしている - BYB

                                                                        概要 おことわり 流れ [前半]:NICドライバ実装に必要な作業 insmod/rmmod 時のエントリポイントとなる関数を用意 pci_diriver構造体を定義して、ドライバを登録 net_deviceとして登録 net_deviceハンドラ関数を用意してハンドラテーブルに登録 割り込みの定義(未動作確認) MMIOレジスタを適切に初期化して、実際にパケットを処理する部分を書いていく(未実装) ハンドラとスケジューリング [後半]:Linuxカーネル関連で詰まったところ insmod時のカーネルクラッシュ インターフェースのstateがUPにならない問題 ソースコード さいごに 概要 Linuxで動くe1000eドライバを開発しようとしており、ドライバと紐付けたNICのstateがupになるところまで進めました。 個人的に忙しくなった都合で一旦ここでプロジェクトを止めるため、備忘録とし

                                                                        • ノベルゲーム移植の歴史 - みずぴー日記

                                                                          この記事はインターネット老人会 Advent Calendar 2023 - Adventarへの飛び込み参加である。 これは数年前に書き溜めていたテキストであり、一部調べきれていない箇所がある。また不正確な記述も混じっていると思う。 この内容を話すためのイベントが2000年ごろのインターネットを懐かしむ会(ハッシュタグ: #インターネット老人会)であり、「インターネット老人会」というミームを生み出す一助となったと自負している。*1 概要 移植のアプローチについて 互換動作環境 変換ツール 移植対象となったOS・機器 PC-UNIX 携帯端末向けOS ゲームボーイ/ゲームボーイアドバンス 権利会社との関係性について System3.5互換動作環境 System3.5 for X SD35B SD35C その他 Leaf/LVNS 痕メッセージ作成ツール Lfview PVNS XLVNS

                                                                            ノベルゲーム移植の歴史 - みずぴー日記
                                                                          • プロと読み解く Ruby 3.1 NEWS - クックパッド開発者ブログ

                                                                            技術部の笹田(ko1)と遠藤(mame)です。クックパッドで Ruby (MRI: Matz Ruby Implementation、いわゆる ruby コマンド) の開発をしています。お金をもらって Ruby を開発しているのでプロの Ruby コミッタです。 本日 12/25 に、ついに Ruby 3.1.0 がリリースされました(Ruby 3.1.0 リリース )。今年も Ruby 3.1 の NEWS.md ファイルの解説をします。NEWS ファイルとは何か、は以前の記事を見てください。 プロと読み解く Ruby 2.6 NEWS ファイル - クックパッド開発者ブログ プロと読み解くRuby 2.7 NEWS - クックパッド開発者ブログ プロと読み解くRuby 3.0 NEWS - クックパッド開発者ブログ 本記事は新機能を解説することもさることながら、変更が入った背景や苦労な

                                                                              プロと読み解く Ruby 3.1 NEWS - クックパッド開発者ブログ
                                                                            • Marie Kondo your software stack with open source

                                                                              As someone makes more money, expenses once considered luxuries can suddenly become seen as necessities: It’s called lifestyle creep. In the world of software development, we can suffer from a similar affliction: stack creep. Where hardware limitations once restricted developers to a minimalist approach, increased processing power, memory, and storage have led many down a more maximalist path. It’s

                                                                                Marie Kondo your software stack with open source
                                                                              • Microsoft Build 2025の新発表まとめ【30選】

                                                                                はじめまして、ますみです! 株式会社Galirage(ガリレージ)という「生成AIに特化して、システム開発・アドバイザリー支援・研修支援をしているIT企業」で、代表をしております^^ この記事では、Microsoft Build 2025の発表内容をまとめていきたいと思います🎉 もしも現地で参加している方は、ぜひ会場で見かけたらお声がけいただけたら嬉しいです^^ ちなみに、現地のKeynoteの会場の雰囲気はこんな感じでした!!! イントロダクション まず、CEOのサティア・ナデラさんは、Building the open agentic web という世界観を発表しました! このフレーズは、Build 2025の重要なテーマであり、この後の最新発表につながっています! さらに、以下のDeveloper tools と 次の4段階のレイヤーに分類をして、これ以降の発表をしていきます。 A

                                                                                  Microsoft Build 2025の新発表まとめ【30選】
                                                                                • act: GitHub Actions のワークフローをローカル環境で実行する - kakakakakku blog

                                                                                  GitHub Actions でワークフローを実行するときに git commit と git push を実行して GitHub Actions の実行を待つことがよくある.より迅速に実行して,結果を受け取るために「act」を使って GitHub Actions をローカル環境(コンテナ)で実行する仕組みを試してみた.便利だったので紹介しようと思う❗️ 当然ながら GitHub Actions を完全再現できてるわけではなく,最終的には GitHub Actions を使うことにはなるけど,特に開発中に頻繁にテストを実行できるのはメリットだと思う.うまく併用しながら開発体験を高めよう👌 github.com セットアップ macOS の場合は Homebrew を使って簡単にセットアップできる.他には Chocolatey (Windows) や Bash script も選べる.今回

                                                                                    act: GitHub Actions のワークフローをローカル環境で実行する - kakakakakku blog