こんにちは、ティアフォーでパートタイムエンジニアをしている佐々木です。 今回はLinuxに搭載されているスケジューラの一つ、SCHED_DEADLINEについて紹介していきたいと思います。自動運転には多数のクリティカルタスクがあり、自動運転の安心・安全をしっかりと確保するためにはこのスケジューラを上手に設定することでこれらのクリティカルタスクが効率的にまた互いにコンフリクトすることなくリアルタイムに処理されることを担保する必要があります。なお、この記事で紹介するコードはLinuxカーネル5.4.0 (Ubuntu 20.04 LTSのベースカーネル) を元としています。 また、ティアフォーでは「自動運転の民主化」をともに実現していく、学生パートタイムエンジニアを常時募集しています。自動運転を実現するためには、Softwareに関してはOSからMiddlewareそしてApplication

先日していただいた取材記事のなかで、こんな話をちょっとした。 大学生の頃がちょうど日本のインターネットの黎明期で、大学院生の頃にはAT互換機にLinuxをインストールして、自分のマシンで動くようにカーネルのソースをいじったりもしていました。そういえばこれ、いつごろの話だっけと思って検索したら、いろいろ思い出したので書いておく。 大学院生の頃、ろくに学校に行かずにひきこもっていた時期がある。本を読んだり、プログラムを書いたり、羽生さんの棋譜を並べたり、自分が将来どうしたらいいかがわからなくて、眼の前の好奇心を満たしつつ、時間をつぶすためだけに行動していたのだ。 当時のLinuxは、そもそも自分のマシンでまともに動かすのがたいへんだった。世界中のオタクたちがよってたかって作っているプログラムではあったけど、いまほど参加者がたくさんいないから、足りないデバイスドライバがたくさんあったからだ。 L

(この記事は KMC アドベントカレンダー 2016 の3日目の記事です) はじめに みなさん以下のようなことで困ったことはないでしょうか? ポート80を listen したいけど特権ポートなので、一般ユーザの権限で動くデーモンでは bind できない。 1024未満のポートは特権ポートと呼ばれ、一般ユーザの権限では bind することはできません。 この問題の解決策を考えてみます。 (なお、長々と説明を書いていますが、結論だけ知りたい人は一番下だけ読んで下さい) root で起動 まず、root であれば特権ポートを自由に bind できるので、root で対象デーモンを起動すれば、特権ポートを bind できます。 しかし、デーモンを root として動作させるのは一般にリスクが大きいです。 もしそのデーモンに脆弱性があった場合、root 権限を悪用される可能性があるわけです。 したが
皆さま、はじめまして。かわだてつたろうと申します。 普段はDebian JP Project/関西Debian勉強会でおもに関西方面で活動しております。先日リリースされたDebian 7.0「Wheezy」の紹介記事を書きませんか、とUbuntuJapanese Teamの柴田さんよりお誘いを受けまして執筆させていただくことになりました。よろしくお願いします。 今回はDebian 7.0「Wheezy」の紹介です。 UbuntuとDebian 広く知られているように、UbuntuはDebian GNU/Linuxを元に開発されているLinuxディストリビューションです。このためUbuntuとDebianではOSの基盤や構成が似通っています。KernelはUbuntu独自ですが、多くのソフトウェアはDebianと共通です。とくにuniverseとmultiverseのコンポーネントの大半は
子供のころからできるだけ手抜きして成果を挙げることだけは長けている山本です。 今回は、C/C++ で作ったプログラムが運用中にクラッシュするときのデバッグ方法のお話しです。 開発中のデバッグは gdb などでソース追いながらデバッグできますが、運用中ですと strip していたり最適化していたりしてデバッグが難しくなります。 そもそも、いきなりクラッシュすると情報が残らずに困ってしまいます。そんなときどうするか。 Step1. スタックトレースを出力する こんな関数を用意しましょう。Linux 以外の人はそれなりに実装してください。 #include <execinfo.h> #include <unistd.h> void dump_stack() { void* bt[100]; int n = backtrace(bt, 100); backtrace_symbols_fd(bt,
なぜLinuxを生み出せたのか? それはぼくが若くてバカだったからだよ!─LinuxCon Japan 2013で2年ぶりに来日したLinus Torvalds名言集 2年ぶりに日本の地を踏んだLinus Torvalds氏 「Linusと私の娘はよく似ている。2人とも、私にとって非常に大切で愛らしい(adorable)存在で、まったくもって天才としか言いようがない。そして2人とも私の言うことをいっさい聞かない」─5月30日、Linux Foundationのエグゼクティブディレクターとして日本のLinuxユーザにもおなじみのJim Zemlin氏は、東京・椿山荘で開催された「LinuxCon Japan 2013」2日目キーノートにおいてLinus Torvalds氏をこのように紹介しました。Linuxの生みの親であり、誕生から20年以上経った現在もカーネル開発の最高責任者であり続
Welcome to theLinux Assembly website! If you are looking for information on assemblyprogramming under UNIX-like operating systems (Linux/BSD/BeOS/etc), this is the right place to be. Here you can find various resources, ranging from tutorials and documentation, to actual programs written in assembly language. As time passes, we will try to provide as much information on the subject as possible,
Linux-mm.org is a wiki for documenting how memory management works and for coordinating new memory management development projects. Please help editing this wiki. Thank you. DocumentationLinuxMMDocumentation contains information on how totweak theLinux kernel memory management subsystem.LinuxMMInternals explains how some of theLinux kernel memory management works. Community To subscribe to th
Linuxの特徴として,たくさんのメーカーや団体などから様々なLinuxディストリビューションが公開および販売されていることだ。これは,Linuxやそのほかの多くのアプリケーションがオープンソースとして公開されており,誰でも独自のLinuxシステムを開発することができるためである。さらに,Linuxディストリビューションについても,原則オープンソースとなっている。そのため,独自のLinuxを開発したい場合でもカーネルやデスクトップ環境などを一から作成する必要はなく,既存のディストリビューションを基に作ることができる。 現在,リリースされている多くのディストリビューションは何らかのディストリビューションを基に作成がされている。例えば,人気のあるLinuxディストリビューションのUbuntuやKNOPPIXはDebian GNU/Linuxを,FedoraやVineLinux,Turbol

Linux向けのツールは巷に数多く出回っているため、素晴らしいものが埋もれてしまっているというケースもある。そこで、そういった素晴らしいアプリケーションのうち、管理者が知っておくべきものをいくつか紹介する。 freshmeatでLinuxアプリケーションを検索してみると1万1828件もヒットする(2008年1月12日現在)。これらすべてのアプリケーションのうち、使ってみる価値があるのはどれだろうか?いくら何でもすべてということはないだろう。しかし、こういった大量のアプリケーションに埋もれ、巷で話題になっていないものの、使ってみる価値のある、隠れた宝石があるはずだ。本記事では、マルチメディア関係のツールから、認証局を生成するツールにいたるまで、ありとあらゆるジャンルにおける知られざる逸品のいくつかに光を当てている。 #1:Floola Floolaはオープンソースにはなっていないものの、Li

2002年頃、とある雑誌でPlan 9の記事を6ページほど作ったことがある。冷静に考えると、とても流行するようには思えなかったのだが、私にはPlan 9はまぶしく輝いて見えた。それは紛れもなく未来のUNIXだったし、日々コンピュータやネットワークを利用する環境として、ぜひとも使いたいと思えるような機能が多くあった。 「Plan 9」(プラン・ナイン)はUNIXが生まれたベル研究所で、次世代UNIXとして開発されていた分散OSだ。UNIXやC言語を生み出したケン・トンプソン、デニス・リッチー、ロブ・パイクらのチームが、当時UNIXが抱えていた限界を打ち破るために、ネットワークやGUIを最初からUNIXの設計思想に基づいて取り入れた先進的なOSだった。それは、未来のUNIXとなるはずだった。 UNIXの大きな特徴として、デバイスをファイルにマッピングして抽象化するというものがある。各I/Oポー
最近の話題 2025 年 12 月度 東京エリア・関西合同 Debian 勉強会のお知らせ (2025/12/13 16:32) 2025 年 11 月度 東京エリア・関西合同 Debian 勉強会のお知らせ (2025/12/13 15:32) MiniDebConf Japan 2025 講演のライブ配信決定のご案内 (2025/08/30 23:17) MiniDebConf Japan 2025 タイムテーブル公開、参加・懇親会の申し込みのお知らせ (2025/08/12 22:02) MiniDebConf Japan 2025 発表者募集終了のお知らせ (2025/07/21 12:17) »(もっと詳しく) Debian JP Project とは? Debian JP Project は、 Debian Project との協力関係の下に以下のような活動を行っているボランテ
Pango とその周辺 図?? に Pango におけるフォントの取り扱いに関するフローチャートを示す。この図の中で、実線はデータが直接やりとりされることを表している。また、点線はデータが間接的に (プロセス間通信を使って) やりとりされることを表している。そして線の色については、 ピンクフォントファミリ名による一覧の取得 緑 XLFD による一覧の取得 黄色 グリフのレンダリング 赤フォントファイルへのアクセス という意味を表している。 ★「図? Pango におけるフォントの取り扱い」 gdk-font-diagram.eps.gz Pango は次の3つのフォントシステムを使用する。 FreeType2? Xft Xlib (コアフォントシステム) これらのフォントシステムのうち、実際にどれを使用するかを決定するのは GDK*7 である。 FreeType2? は、GDK が D
なお、CSS (Cascading Style Sheets) 2 *5では font-weight プロパティに相当し、直接指定では「100, 200, 300, 400, 500, 600, 700, 800, 900, normal (400 と同じ), bold (700 と同じ)」を用い、間接指定では「bolder (次に太い書体), lighter (次に細い書体), inherit (親要素と同じ)」を用いる。 字幅 (ワイズ) 字幅を表す言葉も書体によって若干のバリエーションがあるのだが、通常の字幅のものはレギュラーまたはノーマル、幅の狭いものはナローまたはコンデンス、幅の広いものはエクスパンドまたはワイドと呼ぶ。CSS 2 では font-stretch プロパティに相当し、直接指定では狭いものから順に「ultra-condensed, extra-condensed,
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く