[フレーム]
1 - 40 件 / 182件
1000行でOSを作ってみよう 本書では、小さなOSをゼロから少しずつ作っていきます。 OSと聞くと腰が引けるかもしれませんが、OS (特にカーネル) の基本機能は案外単純です。巨大なオープンソースソフトウェアとしてよく挙げられるLinuxでさえ、バージョン0.01はたった8413行でした。様々な要求に応えるために次第に肥大化していっただけで、当初は大変素朴な実装になっていました。 本書ではコンテキストスイッチ、ページング、ユーザーモード、コマンドラインシェル、ディスクデバイスドライバ、ファイルの読み書きをC言語で実装します。これだけ様々な機能が詰め込まれているのに、コードは合計でたった1000行未満です。 「1000行なら1日でできそう」と思うかもしれませんが、初学者には少なくとも3日はかかるでしょう。OS自作のハマりポイントは「デバッグ」です。アプリケーション開発とは違うデバッグ手法
Arm入門勉強会とは、macOSがArmに移行したこの機にArmアーキテクチャでのプログラミングについて入門するソフトウェアエンジニアのための会です。今回主催の@nullpo_head 氏が、Armの仮想化支援機構について、その仕組みから深く説明します。前半は「現代のハードウェア仮想化支援機構」について。全2回。 ハードウェア仮想化支援とは何か佐伯 学哉氏:入門セッション3つ目は『Armの仮想化支援機構』についての入門セッションです。どうぞよろしくお願いします。 本発表のスタートとゴールです。VMwareとかQemuとか使ったことあるけど仮想マシンの仕組みなんも知らんというところがまずスタートになっています。 1個目のゴールは、最近のVMのざっくりした仕組みとハードウェア仮想化支援とは何かということがわかること。そしてその話のあとに実際にArmの仮想化支援機構の概要を説明し、Armの仮想化
本書では、64-bit ARM (ARMv8/AArch64) アーキテクチャを前提としたハイパーバイザの仕組みをできるだけ分かりやすく解説し、実際にラズベリーパイ4やQEMUで動作するハイパーバイザ (Type1) を自作する方法を解説しています。 ソースコード: https://github.com/HidenoriMatsubayashi/evisor ⬛︎ 注意 本書はまだ作成中(現在5章を作成中)ですが、モチベーション維持のために公開している状態です(章立てなど今後変わる可能性ありです)。内容は随時更新していますので、気になる方はウォッチやコメント等をお願いします。 ⬛︎ 学べること ・ハイパーバイザとその仕組みと原理 ・64-bit ARM (ARMv8/AArch64) アーキテクチャの仮想化支援機構 ・自作ハイパーバイザの作り方 ⬛︎ コミュニティ 質問や間違い指摘など本書
Apple Silicon「M1」搭載Mac登場 MacBook Air、Mac mini、MacBook Proの3機種 米Appleは11月10日(現地時間)、プロセッサをIntel製から自社Apple Siliconに切り替えた初めてのMacを発表した。iPhone 12、第4世代iPad Airに搭載されたApple製SoC「A14 Bionic」をMac向けに強化した「M1」を組み込んだMacBook Air、Mac mini、MacBook Pro 13"を発売する。価格はそれぞれ10万4800円、7万2800円、13万4800円から(いずれも税別)。11月17日に発売する。OSはmacOS Big Sur。 MacBook AirとMacBook Pro 13"はそれぞれバッテリー持続時間を大幅に伸ばし、MacBook Pro 13"は最長20時間の連続動画再生を可能にした。
モチベーション なぜRustを選んだか? 私はQEMUは「アーキテクチャエミュレーション界のLLVM」だと思っている QEMUが高速な理由:TCG Binary Translation ゲスト命令(RISC-V) → TCG → ホスト命令(x86)の処理をRustで作ろう RISC-Vの命令をフェッチしてデコードする RISC-Vの命令をTCGに変換する TCGをx86に変換する 実装結果 Binary Translation実行を高速化するための様々なテクニック BasicBlock分まで複数命令をまとめて変換 TCG Block Chainingの実装 評価結果 TB Lookup and Jumpの実装 評価結果 まだ完成していないところ 一部の最適化はまだ未実装となっている ゲストアーキテクチャがx86のみとなっている。TCGによる複数プラットフォーム対応として、まずは環境のそろ
はじめに VMWare, VirtualBoxでネットワーク設定をする際、何をどう設定するのがよいかたびたびわからなくなるため、改めて接続方式・構成についてちゃんと理解しておこうと思いました。 そうすることで今後仮想環境を構築する際、ユースケースに応じて適切な設定を選択できればと思います。 対象 仮想環境のネットワークを何となく設定して繋がったので終わりにしている人 何となく設定したけれども思うように繋がらず困っている人 ちょっと前の自分 想定環境 ホストPC: Windows10 Pro 64bit 仮想化ソフトウェア: VMware WorkStation Player 12 Oracle VM VirtualBox 6.0 会社内LANなどに接続したホストPCで仮想環境を構築し、仮想マシンをネットワーク接続させる場合を想定 ネットワーク設定と概略 ざっくりまとめると以下のようになりま
VMwareとBroadcomは、VMwareがBroadcomによって買収されることを正式に発表しました(VMwareの発表、Braodcomの発表)。 Broadcom to Acquire VMware for Approximately 61ドル Billion in Cash and Stockhttps://t.co/VhdGU0Aezl pic.twitter.com/3dZXkMQQO1 — VMware News (@vmwarenews) May 26, 2022 BroadcomはVMwareの発行済株式すべてを現金と株式による取引で取得。買収価格は約610億ドル(1ドル130円換算で7兆9300億円)。また、VMwareの純負債80億ドルも引き受ける予定とのこと。 両社による買収交渉は数日前から複数の報道機関が報じていました。 参考:VMwareの買収に向けて半導体メ
自宅サーバを運用していると突発的なリブートや設定ミスによるアクセス不能などなどが起こり、そのたびにリモートKVMが欲しくなる...。 しかし、リモートKVMは主にエンタープライズ向けで対応した筐体や装置が高額でなかなか手が出づらい...。 そこでどこのご家庭にもある余ったラズパイとPiKVMを使って安価にリモートKVMを作ろうというのがこの記事の趣旨。 PiKVMとは PiKVMは、Raspberry Pi(ラズパイ)を用いて遠隔地から物理的なコンピュータにキーボード、ビデオ、マウス(KVM)スイッチとしてアクセス可能にするオープンソースプロジェクトである。 この記事を書いている現在(2024年03月24日)では、DIY PiKVM V1〜v4の4つのバージョンがある。 V3とV4はラズパイ内蔵の完成品になっていて、これらのバージョンを自作することはできない?ので今回の選択肢からは外す。 V1とV2
「OSの開発」と聞くと、大企業や大規模組織にしか作れない複雑なものをイメージしがちです。「OS in 1,000 Lines」はOS専門家の怒田晟也氏が記した無料の教材で、OSの基本的な仕組みを学びつつ1000行未満のシンプルなコードでOSを作成することができます。 1,000行で作るオペレーティングシステム https://seiya.me/blog/operating-system-in-1000-lines はじめに | OS in 1,000 Lines https://operating-system-in-1000-lines.vercel.app/ja/ 「OS in 1,000 Lines」は最初から最後まで日本語で記述されており、解説を読みながらコードを書くことで「コンテキストスイッチ」「ページング」「ユーザーモード」「コマンドラインシェル」「ディスクデバイスドライバ」「
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はコンピ
www.docker.com Docker Desktopがここ最近活発に開発されているというか、かなり見た目がオシャレになってきてて「ヤル気あるな〜」と思って眺めていたのですが、なるほど有料化するということなのですね。 Docker Desktop remains free for personal use, education, non-commercial open source projects, and small businesses (fewer than 250 employees AND less than 10ドルM USD in annual revenue). Commercial use of Docker Desktop in larger enterprises (more than 250 employees OR more than 10ドル million
こんにちは、今年の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の発展が注目されている中あえて、「地味だけど重要な技術」にフォーカス
米Ankerがボタン1つで2台のMac/PCからの映像出力とキーボードやマウス操作を切り替えられるCPU切替器「Anker 553/554 USB-C Docking Station (KVM Switch)」を発売しています。詳細は以下から。 米Ankerは現地時間2023年07月10日、ボタン1つで2台のMacやWindows PCからの映像出力と、キーボード&マウス操作を切り替えられるCPU切替器「Anker 553 USB-C Docking Station (KVM Switch) (A83K2)」と「Anker 554 USB-C Docking Station (KVM Switch) (A83K1)」を新たに発売しています。 Seamless Switching: Enjoy effortless switching between USB-C devices with a
はじめに 環境の用意 ブートプログラムを作る 動かしてみる コンパイル QEMU上で起動 GDBで制御 最後に おまけ 執筆者 : 高橋 浩和 ※(注記) 「RISC-V OSを作ろう」連載記事一覧はこちら ※(注記) 「RISC-V OS」のコードはgithubにて公開しています。 はじめに RISC-VはMIPSアーキテクチャの流れを汲む正統派?のRISC CPUです。命令セットはシンプルですが、既存のメジャーなCPUのアーキテクチャと大きな違いがあるわけではありません。 Linux上で利用できるRISC-Vツール群も揃ってきたので、それらを使ってRISC-V用の小さなOSを実装してみようと思います。 最初は欲張らずに単純な実装を目指すことにします。 シングルコアのみサポート 64bitモードを使用 マルチタスキングを実現 タイムシェアリングスケジューリングを実装 割り込みネストは無し 保護機能は使わ
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,
先月、国内最大のセキュリティ研究会であるコンピュータセキュリティシンポジウム 2020(CSS 2020)が開催され、そこで、Rust言語を用いてファームウェア、OS、言語処理系を設計・実装した話を発表しました。本来、CSS 2020はリアルで開催されるはずでしたが、コロナ禍の影響でオンライン開催となり発表動画作成が求められました。せっかく作った動画をこのまま捨て置くのももったいないと思い、ここで供養したいと思います。 www.youtube.com 概要 内容は、Rust言語を用いて、AArch64のセキュアワールド内で動作するファームウェア、OS、プログラミング言語処理系を実装した話となります。と言っても、まだまだ基本的な部分しか実装しておらず、実現目標に対して2〜3割と言ったところですが、どうぞご笑覧ください。 ブート部分は多少アセンブリ言語を使っていますが、その他の部分はRustで
アーカイブ2022年8月 (1)2022年2月 (1)2021年11月 (1)2021年9月 (1)2021年5月 (1)2021年3月 (1)2021年1月 (1)2020年12月 (1)2020年11月 (2)2020年10月 (3)2020年9月 (1)2020年8月 (3)2020年7月 (1)2020年6月 (2)2020年5月 (4)2020年4月 (2)2020年3月 (2)2020年2月 (1)2020年1月 (1)2019年12月 (4)2019年11月 (3)2019年10月 (5)2019年9月 (4)2019年8月 (5)2019年7月 (6)2019年6月 (7)2019年5月 (7) 自分には、日常のどうでもいいスナップ写真を撮るという趣味というか癖みたいなものがある。毎日写真を撮っているわけではないのだが、きっと5年後、10年後に見返したら面白いだろうなと思え
AppleはMac上でWindowsを動作させるために「Boot Camp」を提供していますが、このBoot CampはIntel製チップを搭載したMacにしか対応しておらず、Apple初のApple Siliconである「M1」チップを搭載したMacBook Air、Mac mini、MacBook Proには対応していません。しかし、このM1チップを搭載したMac上でWindowsを動作させることに開発者のAlexander Grafさんが成功しています。 ARM Windows M1 Mac virtualization demonstrated - 9to5Mac https://9to5mac.com/2020/11/27/arm-windows-virtualization-m1-mac/ Mac上でWindowsを動作させるためのBoot Campは、記事作成時点ではAppl
仕事やプライベートで複数のデスクトップPCを使用している人は、マウスやキーボードをいちいち切り替えるのが面倒に感じた経験があるかもしれません。ソフトウェアエンジニアのHrvoje Cavrak氏が、異なるOSで動いているPC間でも1組のマウスやキーボードの出力先を瞬時に切り替えられるUSB切替機を自作し、コードやハードウェアの設計をGitHubで公開しています。 GitHub - hrvach/deskhop: Fast Desktop Switching Device https://github.com/hrvach/deskhop Building A Better Keyboard And Mouse Switch | Hackaday https://hackaday.com/2023/12/26/building-a-better-keyboard-and-mouse-swit
2024年06月05日に行われた、OCHaCafe Season8 #5 - Kubernetesで作るIaaS基盤で用いた資料です。 commpass: https://ochacafe.connpass.com/event/316645/
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert
Apple M1チップ搭載のMacでARM版Windows 10を動作させるQEMUラッパー「ACVM」がリリースされています。詳細は以下から。 2020年11月、AWSエンジニアのAlexander Grafさんは、AppleのHypervisorフレームワーク(以下、hvf)とCPUエミュレータQEMUを利用し、Appleが販売を開始したApple Silicon「Apple M1」チップ搭載のMacで、ARM版のWindows 10 (Insider Preview)を動作させることに成功したと発表し、QEMU用のhvfパッチが公開されていましたが、 元Appleのインターン生で現在はRobinhoodでiOSエンジニアを務めるKhaos Tianさんが、このhvfパッチを当てたQEMUをラッパーし、Apple Silicon M1搭載のMacに簡単に「Windows 10 on A
実機が存在しなくてもエミュレータを使えば動きの中身が見えるmsyksphinz氏(以下、msyksphinz):「Rustで作るフルスクラッチQEMU型エミュレータ」と題して、発表をします。 簡単に自己紹介をさせてください。Twitterだとこういうアカウントでいろいろと活動しています。趣味で「FPGA開発日記」というブログを書いていて、RISC-V、FPGA、CPU、低レイヤプログラミングなど、興味のあるものの記事を書いています。本業はハードウェア開発エンジニアをしていて、汎用CPUの設計などの仕事をしています。 今回はRustというテーマなんですが、職場はRustの「ラ」の字も出てこないところです。こういうことを趣味でやっています。最近は、RISC-Vのことなどを雑誌に連載する機会も増えてきています。 本日は、QEMUのお話をします。私自身、どういう仕組みになっているのかを勉強する良い
三行まとめ BuildJet が提供するArmマシンを用いてArmで動くイメージを作成する Docker Buildx を用いると複数のイメージに同じタグを貼ることができる Actionsのx86_64マシンでamd64で動くイメージを、BuildJetのArmマシンでarm64で動くイメージをそれぞれ作成してくっつけた 三行まとめ はじめに BuildJetとは 方法 BuildJetに登録する BuildJetを有効にする runs-onにBuildJetのランナーを指定する 複数のイメージを束ねるマニフェストを作る めでたしめでたし 実際に使ってみる 速度比較 まとめ はじめに Apple Silicon搭載マシンの登場、Raspberry Piの普及などArmが身近になってきた人も多いのではないでしょうか。 Raspberry Pi上で動くKubernetesなどを運用する際にはa
Windows. Linux. Meet Apple Silicon. UTM employs Apple's Hypervisor virtualization framework to run ARM64 operating systems on Apple Silicon at near native speeds. On Intel Macs, x86/x64 operating system can be virtualized. In addition, lower performance emulation is available to run x86/x64 on Apple Silicon as well as ARM64 on Intel. For developers and enthusiasts, there are dozens of other emulat
Twitterを見てるとたまにVagrantとVirtualBoxを混同してる発言があってその度にイラッとしてるのでメモ。 tl;dr; 雑な説明 VirtualBoxとは Vagrantとは よくある間違い tl;dr; DockerとVagrantはカバーしてる分野が異なるツールなので比較するのは間違い DockerとVagrantを比較してる場合、9割くらいの確率でVagrantとVirtualBoxを混同している可能性が高い 雑な説明 VirtualBoxとは www.virtualbox.org WikiPedia より引用 Oracle VM VirtualBox (オラクル ブイエム バーチャルボックス)とは、x86ならびにAMD64/Intel64にかかる仮想化ソフトウェアパッケージの一つ。 要はVMの実行環境です。 似たような領域をカバーするツールとしての比較対象は下記
2024年5月13日(月)に、Windows向け仮想マシンアプリ「VMware Workstation Pro」とmacOS向け仮想マシンアプリ「VMware Fusion Pro」が個人利用に限り無償化されました。既にダウンロードとインストールが可能になっていたので、両アプリのダウンロードおよびインストール手順をまとめてみました。 VMware Desktop Hypervisor Pro Apps Now Available for Personal Use - VMware Cloud Foundation (VCF) Blog https://blogs.vmware.com/cloud-foundation/2024/05/14/vmware-desktop-hypervisor-pro-apps-now-available-for-personal-use/ ・目次 ◆だいやまーく1:Br
--- a/devenv/make_image.sh +++ b/devenv/make_image.sh @@ -23,11 +23,24 @@ qemu-img create -f raw $DISK_IMG 200M mkfs.fat -n 'MIKAN OS' -s 2 -f 2 -R 32 -F 32 $DISK_IMG $DEVENV_DIR/mount_image.sh $DISK_IMG $MOUNT_POINT -sudo mkdir -p $MOUNT_POINT/EFI/BOOT -sudo cp $EFI_FILE $MOUNT_POINT/EFI/BOOT/BOOTX64.EFI +if [ `uname` = 'Darwin' ]; then + mkdir -p $MOUNT_POINT/EFI/BOOT + cp $EFI_FILE $MOUNT_POINT
オープンソースの仮想マシンソフトウェアおよびエミュレーターとして知られる「QEMU」に、ChatGPTをはじめとした生成AIが出力したコードを追加することを禁止するポリシーが追加されました docs: define policy forbidding use of AI code generators · qemu/qemu@3d40db0 · GitHub https://github.com/qemu/qemu/commit/3d40db0efc22520fa6c399cf73960dced423b048 NVIDIAのジェンスン・フアンCEOが2024年に行った「AIがコードを書くのでもうプログラミングを学ぶ必要はない」という発言が正しいかどうか、その結論はまだ出ていませんが、IT業界でAIがかなり重宝されているのは事実。 NVIDIAのCEOが「AIがコードを書くのでもうプログラミ
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く