タグ

osに関するskypenguinsのブックマーク (46)

  • 意外と知られていない、Linuxのメモリホットプラグのインタフェースについて - Qiita

    0.はじめに 0.1 今年を振り返って この記事はFujitsu Advent Calendar 2023 の24日目の記事です。 なお、記事は個人の意見に基づくものであり、組織を代表するものではありません。 今年もAdvent Calendarの季節となりましたね。皆様お変わりないでしょうか? 私の方はというと、全体的に多忙ではありましたが、夏には国際学会IEEE NVMSAでの発表、秋から年末にかけて海外出張やOpen Source Summit Japanでの講演など、今年後半は怒涛のように仕事がくる状態になってました。おまけに 「Linus Torvaldsと会談せよ」 というミッションまで降ってきてしまい、正直どうなることかと思いました。人生、何が起こるかわからないものです。学生時代、英語は超苦手だったのに…。 0.2 今年の記事について さて、例年このAdvent Calen

    意外と知られていない、Linuxのメモリホットプラグのインタフェースについて - Qiita
  • 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事情
  • 静的リンク・動的リンク・動的ローディングの違い - プログラムを自動生成したい

    今日のネタはリンカの仕事について。低レイヤな話としてありがちだが、いかんせんバイナリを入力にバイナリを出力する処理なので直感的に理解しづらい。ってことで調べながらメモる。 リンカ(linker)とは何か リンカ とは、コンパイルされたファイル(オブジェクトファイル)同士をつないで実行可能なファイルを作るプログラムである。ほとんどの場合、ソースコードはファイルごとにコンパイルされ、ファイルごとにオブジェクトファイルが生成される。他方、プログラム中で外部ファイルで定義されたシンボル(変数名や関数名など)を参照する場合がある。たとえばライブラリ中に定義された関数を呼び出す場合などである。リンカの役割は、このようなファイル内を見ただけでは正体不明のシンボルと外部ファイルに含まれる定義を紐付けることである。 リンカには静的リンクと動的リンクの2種類がある。以下にそれぞれについてざっくりまとめる。 静

    静的リンク・動的リンク・動的ローディングの違い - プログラムを自動生成したい
  • VM環境のCPU仮想化はどうやって実現しているのか ハードウェア仮想化支援機構の仕組み

    Arm入門勉強会とは、macOSがArmに移行したこの機にArmアーキテクチャでのプログラミングについて入門するソフトウェアエンジニアのための会です。今回主催の@nullpo_head 氏が、Armの仮想化支援機構について、その仕組みから深く説明します。前半は「現代のハードウェア仮想化支援機構」について。全2回。 ハードウェア仮想化支援とは何か 佐伯 学哉氏:入門セッション3つ目は『Armの仮想化支援機構』についての入門セッションです。どうぞよろしくお願いします。 発表のスタートとゴールです。VMwareとかQemuとか使ったことあるけど仮想マシンの仕組みなんも知らんというところがまずスタートになっています。 1個目のゴールは、最近のVMのざっくりした仕組みとハードウェア仮想化支援とは何かということがわかること。そしてその話のあとに実際にArmの仮想化支援機構の概要を説明し、Armの仮想

    VM環境のCPU仮想化はどうやって実現しているのか ハードウェア仮想化支援機構の仕組み
  • 車載 OS について語る

    はじめに 他分野のエンジニアに「1回のミーティングで車載OSについて教えて」と相談されることがあったため、その説明の際に使ったメモ書きを共有する。一応、最初に予防線を張っておくと、私自身、車載ソフトウェア業界に身を置くが、「いわゆる車載OS分野の専門家か?」というとそうでもないし、やや距離のある分野の方への説明なので、ツッコミはお手柔らかにお願いしたい。 ISO-26262機能安全について OSという耽美な響きからGeekでTechな話を期待されたかもしれないが、まず国際標準の話から説明を始める。というのも、この点が生命・財産に関わるソフトウェアと、そうでないソフトウェアを分かつ、大きな前提のため、ここはスキップできない。 機能安全とは? 国際標準とは世界で統一的なコミュニケーションを図るための規格であり、Terminologyについては他のどんな文書より定義が厳密なものだが、「1回のミー

    車載 OS について語る
    skypenguins
    skypenguins 2023/07/31
    Linuxもスケジューラのクラスにsched_rtってのがあってRTOSみたいに使えるらしい
  • 当時のx86は要件を満たしていなかった 要件・仕組みから見るmacOSの仮想化技術の変遷

    NTT Tech Conferenceは、NTTグループのエンジニアたちが一堂に会し、NTTグループ内外のエンジニアたちと技術交流を行うためのカンファレンスです。ここで「macOSの仮想化技術について~ virtualization-rs Rust bindings for Virtualization」をテーマに鈴ヶ嶺氏が登壇。まずはmacOSの仮想化技術の変遷と、ツールについて紹介します。 発表の内容とアジェンダ紹介 鈴ヶ嶺聡哲氏(以下、鈴ヶ嶺):よろしくお願いします。鈴ヶ嶺です。まず概要を説明します。macOSの「11 Big Sur」から、新しくLinux VM作成の高レベルAPIのVirtualization.frameworkが登場しました。発表ではこれがメインになります。 Objective-CやSwiftAPIが提供されていますが、「あれ? Rust APIがないなぁ」

    当時のx86は要件を満たしていなかった 要件・仕組みから見るmacOSの仮想化技術の変遷
  • プロセスよりもスレッドのほうが高速にコンテキストスイッチできることを検証する

    目次 はじめに コンテキストスイッチとは 実験1: パイプを使って計測する 実験2: より実際的なモデル プロセス VS スレッド はじめに すこし前に、Chromeの開発をされているをやられている方のこんなスライドが回覧されてきた。 で、それを見てすこしひっかかったのが 15ページ のところ。 スレッドとプロセスの比較だけど、スレッドについて、このような言及がある。 そのぶんプロセスより軽い(メモリ使用量、コンテキストスイッチ) あれ、コンテキストスイッチの時間って、プロセスとスレッドで違うんだっけ…。 ぼくはアプリケーションプログラマなので低レイヤーのことは詳しくないのだけど、 プロセスもスレッドも、スケジューラーから見ると同じタスクという抽象であるみたいな話をどこかで聞いたことがあって、 コンテキストスイッチの時間にも違いはないのかと、なんとなく思い込んでいた。 これを実際に検証する

    プロセスよりもスレッドのほうが高速にコンテキストスイッチできることを検証する
  • 「MacはLinuxだった」って本当? 「そうだね……」元Mac雑誌編集者は昔語りを始めた

    MacLinuxだった」って当? 「そうだね……」元Mac雑誌編集者は昔語りを始めた:ヤマーとマツの、ねえこれ知ってる?(1/4 ページ) 経歴だけは長いベテラン記者・編集者の松尾(マツ)と、幾つものテック系編集部を渡り歩いてきた山川(ヤマー)が、ネット用語、テクノロジー用語で知らないことをお互い聞きあったり調べたりしながら成長していくコーナー。交代で執筆します。 マツ 「MacLinuxだった」という趣旨のツイートが話題になっていて、ああそういうこともあったなあ、と思い出したので、ちょっと昔語りしようかなと。茶でも飲みながら。 ヤマー 私は紅茶を用意してきます。 戻ってきました。macOSは何がベースになっているかって話ですよね。 マツ 結論から言っちゃうと、現在のmacOSはUNIX系列のOSではあるけど、Linuxではないです。macOSのベースになっているのはDarwin。

    「MacはLinuxだった」って本当? 「そうだね……」元Mac雑誌編集者は昔語りを始めた
  • この個人サイトは自作OSで動いています

    追記 (2022 5/29): サーバ代をケチるべくVercelに移行しました。動いていたソースコードは ココ に置いてあります。 あなたの予想に反して、このページが見えているでしょうか?このWebサイトは自作OSのKerlaが提供しています。 これは自作OS Advent Calendar 2021の23日目の記事です。 自作OS「Kerla」の紹介 Kerla(かーら)はRustで書かれたLinux ABI互換モノリシックカーネルです。今年の春頃から作り始め、DropbearというSSHサーバが動作する程度には基的なUNIXの機能が実装されています。具体的には、ファイルの読み書きやUDP/TCPソケット、fork/exec、シグナル、擬似端末といったものです。 カーネル実装の雰囲気を軽く紹介すると、Kerlaでは以下のようにシステムコールが実装されています。 /// write(2)

    この個人サイトは自作OSで動いています
  • WindowsがLinuxより優れている点は何ですか? (OSの設計に関する質問であり、利用者の使い勝手の話ではありません) 。

    回答 (6件中の1件目) 私はWindowsのカーネルを熟知しており、Linuxのカーネルについてはそれなりに知っています。 意外に思われるかもしれませんが、類似点の方がずっと多く、違いは少ないです。私がよく言う違いの1つは、LinuxのI/OモデルはUNIXから継承した同期式が基で、WindowsのI/OモデルはVMSから継承した非同期式が基であるということです。WindowsのI/Oリクエストの設計は、同期式と非同期式のI/Oを美しく管理できる優れた設計になっています。Linux(及び普通のUNIX)でも非同期のI/Oは可能ですが、そのための統一された仕組みはありません。これは...

    WindowsがLinuxより優れている点は何ですか? (OSの設計に関する質問であり、利用者の使い勝手の話ではありません) 。
  • 『ゼロからのOS自作入門』に込めた思い - uchan note

    2021 年 3 月 22 日に『ゼロからの OS 自作入門』を出版する予定です。 書は OS を手作りするで、現代のパソコンでちゃんと起動する点が特長です。 15 年前の 2006 年に出版された『30 日でできる!OS 自作入門』を読んで育った私(uchan)が その後継となるだろうを書いたということで、執筆の裏話を記してみたいなと思います。 書籍の概要 タイトル:ゼロからの OS 自作入門 著者:内田公太(uchan) 出版予定日:2021 年 3 月 22 日 ページ数:768(最大。実際はもっと少なくなる予想) ISBN:978-4-8399-7586-9 出版社の書籍ページ:ゼロからのOS自作入門 | マイナビブックス 書は OS 作りに関する知識がないところから始め、オリジナルの OS「MikanOS」を作る一通りの過程を説明します。 パソコンの電源を入れ、他の OS

    『ゼロからのOS自作入門』に込めた思い - uchan note
  • 「主張しないOSだったから世界に広がった」TRONの生みの親・坂村健が語る - Yahoo!ニュース

    発のコンピュータOSで世界シェアの約60%を占めるものがある。1984年にプロジェクトが開始された、組み込み型OS「TRON」だ(現在、正式にはT-Kernel)。このTRONを発案・牽引してきたのが東洋大学の坂村健教授だ。現在のIoTの先駆けとして国際電気通信連合(ITU)の「ITU150周年賞」も受賞している。未来をいちはやく構想してきた坂村氏に、世界に広がった理由などを聞いた。(ジャーナリスト・森健、撮影:塩田亮吾/Yahoo!ニュース 特集編集部) コンピュータを動かす基的なシステム=OS(オペレーティング・システム)というと、WindowsmacOS、あるいはスマートフォンのAndroidやiOSなど「情報処理用OS」が頭に浮かぶだろう。だが、名前こそあまり知られていないが、世界中の多様なコンピュータに関わる日発のOSがある。「TRON」だ。「組み込み型OS」というタイ

    「主張しないOSだったから世界に広がった」TRONの生みの親・坂村健が語る - Yahoo!ニュース
    skypenguins
    skypenguins 2020/05/07
    「現実歪曲空間」の持ち主っぽそう
  • Fuchsia

    Fuchsia is an inclusive, open source effort that welcomes high-quality, well-tested contributions from all. h�h�U `�?i�U

  • マイクロカーネルとL4について (Yabaitech.tokyo, Writing a (micro)kernel in Rust in 12 days より) - 豆腐の豆腐和え

    怒田さん*1のこの記事、「CとRustで一から作るマイクロカーネルOS」のおかげで、マイクロカーネルとRustが今ホットです。そこで、技術書典6, 7に出展したYabaitech.tokyoにて連載している、"Writing a (micro)kernel in Rust in 12 days"から、マイクロカーネルとL4についての話を書いた"1日目"の記事の一部冒頭を、いい機会なので再編集してご紹介します。「マイクロカーネルってタネンバウム教授とリーナスの論争のあれだよね?」とか、「L4ってなに?」って方に読んでいただいて、L4ファミリーとマイクロカーネルについて簡単にご紹介できればなと思います。 ちなみに抜粋元の上述の記事は、僕が怒田さんと同じようにRustでマイクロカーネルを書いてみよう、という趣旨の企画です。なので、Yabaitech.tokyoの方もよろしくお願いします!ただし、

    マイクロカーネルとL4について (Yabaitech.tokyo, Writing a (micro)kernel in Rust in 12 days より) - 豆腐の豆腐和え
  • CとRustで一から作るマイクロカーネルOS

    マイクロカーネルは浪漫に溢れる非常に作りがいのあるソフトウェアです。この記事は,「マイクロカーネルベースのOSの一から作ってIaaSで動かす」ことを目標に作ったマイクロカーネルベースのOS Resea(りーせあ)の設計と実装について軽くまとめた物です。 ソースコードはGitHubにあります。 マイクロカーネルとは Linuxのようなモノリシックカーネルでは色んな機能がカーネル空間で動きますが,マイクロカーネルではユーザプロセスたちが互いに通信しながらOSを作り上げます。プロセス・スレッド・仮想メモリ管理,プロセス間通信,タイマーといった必要最低限の機能だけをカーネルが担います。デバイスドライバやファイルシステムといった残りの機能は,独立したユーザプロセスとして動きます。たとえデバイスドライバが暴走しても他のコンポーネントを壊すことはないのです。マイクロカーネルは信頼性が高く,疎結合で美しい

    CとRustで一から作るマイクロカーネルOS
  • 何がOS実装の理解を難しくしているのか(GNU assemblyのポイント)

    OS内部どうなってんのか知っといた方がいいんだろうなぁ、と思っている人向けになんか書きたいなぁ、と思って書きました。 OSを理解しようとすると、初回は挫折感をあじわって退場するのですが、原因いろいろあると思います。 C言語、アセンブリ(gnu assembly)、ELF, linker scriptの知識 boot処理時(の登場人物)で混乱する マルチタスク処理(switching, interrupt)がわからん OS自作しようぜ、みたいなはじめから強いが多い まぁ、最後のは冗談として(自分は凡人なので..)、 https://github.com/mit-pdos/xv6-public (Unix V6のx86(32bit) implementation。以下xv6と呼びます) と https://pdos.csail.mit.edu/6.828/2018/xv6.html がとても

    何がOS実装の理解を難しくしているのか(GNU assemblyのポイント)
  • 低レイヤーの歩き方 - るくすの日記 ~ Out_Of_Range ~

    この記事は Kobe University Advent Calendar25日目の記事です。 低レイヤー技術(後述)をこれから学びたい人向けの入門記事です。 自身の経験を踏まえ、より多くの人達にこのレイヤーに興味を持ってほしくて書きました。 決して卒論がやばくてAdvent calendarのネタが作れなかったわけでは(ry なぜこんな記事を書いたか いわゆるシステムプログラミングのような低レイヤー(と言って差し支えない)ジャンルって一体何から始めれば良いのかいまいちピンと来ないし、何が面白いのかも分からないと思われている事が多いと思います。 にもかかわらず低レイヤーの魅力や学び方の指針みたいな物を示した、いわゆる入門記事ってかなり少ないんですよね。 記事はこれからシステムプログラミングを始めたい方や、既にかじってみたが中々先が見えてこない、将来何の役に立つのか不安という方達に読んでい

    低レイヤーの歩き方 - るくすの日記 ~ Out_Of_Range ~
  • RustでRISC-V OS自作!はじめの一歩 - Qiita

    オープンソースのRISC CPU命令セットアーキテクチャです。 いわずと知れた至高の命令セットアーキテクチャです。 来年あたりはHypervisor拡張命令セットの盛り上がりを期待しています。 いわずと知れた至高の戯れです。 低レイヤ好きにはたまらないですね! つまり、記事の趣旨は、至高のプログラミング言語で、至高の命令セットをターゲットに、至高の戯れをする!ということです。 当のはじめに x86でOS自作を始めるのも1つの有力な選択肢です。 その場合の利点と欠点は次のようなものと考えています。 利点 クロスコンパイラが不要なため、開発環境を整えやすい 普段使用しているPCなどで動作するOSが作れる 他の命令セットが簡単に思える 欠点 歴史的経緯があり、命令セットがとにかく複雑 エミュレータやCPU自作に手を伸ばしにくい これに対して、RISC-VでOS自作を始める場合、その利点欠点は

    RustでRISC-V OS自作!はじめの一歩 - Qiita
  • OSを好きなだけの普通の大学生が簡単に強くなる方法 - livaの雑記帳

    raphine.hatenablog.com 以前こんな記事を書きました。 この記事の最後では「ここの記事に書いた内容を実践するだけじゃ大学生は強くなれないよ」と言い残したわけですが、多方面から「じゃあ大学生はどうすれば良いんだよ!」みたいなお叱りを頂いたので、続編の大学生版を書きます。 ただし続編といっても、少しだけ補足条件を。 上の記事の内容をある程度実践している。(完璧にとは言いません。完璧なんてものは存在しないので) 研究室配属前の学生である。 二つ目は結構大事な事で、まだ研究を初めてない、というのは大きなポイントです。 中高生版でも書きましたが「強さ」というのは曖昧です。別に成績が良くなくても強い人はいます。だから「SNS映えするような強さ(?)を求めるだけなら簡単でっせ?」という事を伝えたい、というのが前の記事の趣旨でした。 でも研究始めちゃうと、強さの定義って「いかに良い学会

    OSを好きなだけの普通の大学生が簡単に強くなる方法 - livaの雑記帳
  • トロン―国産OSが世界標準になる : 読売クオータリー : まとめ読み : ニュース : 読売新聞オンライン

    情報通信の世界では、あらゆるモノをインターネットにつなげようという「IoT」の技術が、製品開発や産業応用の中心となりつつある。そのIoT分野で6割以上の市場占有率を誇るのが、日で生まれたコンピューター用基ソフトウェア(OS=オペレーティングシステム)「トロン」だ。このトロンが、米国電気電子学会の標準規格として認定される手続きが進んでいる。順調に進めば、国産のOSが、「世界標準」になる。 IoT時代がやってきた IoTという言葉を最近よく目にしたり、聞いたりするという人は多いだろう。インターネット・オブ・シングスの略で、「モノのインターネット」と訳されることが多い。生活空間のあらゆるモノ、あらゆる場所に小さなコンピューターやセンサーを組み込み、ネットワークにつないで便利な情報化社会を目指そうという技術である。ひと昔前まで「ユビキタス・コンピューティング(ユビキタスはラテン語であまねく存在

    トロン―国産OSが世界標準になる : 読売クオータリー : まとめ読み : ニュース : 読売新聞オンライン
    skypenguins
    skypenguins 2018/05/03
    何年前の記事だろうと思ったら…今月かよ!