並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 583件

新着順 人気順

QEMUの検索結果1 - 40 件 / 583件

  • 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事情
    • NTT 東日本 - IPA 「シン・テレワークシステム」 - セキュリティ機能の大規模アップデートと実証実験の現状報告

      「シン・テレワークシステム」 セキュリティ機能の大規模アップデートと実証実験の現状報告について 2020 年 5 月 14 日 「シン・テレワークシステム」 開発チーム 昨日、2020 年 5 月 13 日をもちまして、「シン・テレワークシステム」のユーザー数が 2 万人を超えました。テレワークの効果等により、新型コロナウイルスの感染者数は減少していますが、まだ油断をすることはできません。この機会に、「シン・テレワークシステム」公開後 3 週間経過時の現況と、この大規模な実証実験のコスト効率と社会的効果について、お知らせをしたいと思います。 また、本日、「シン・テレワークシステム」を大規模な企業 LAN などのセキュリティ・ポリシーが制定されている環境向けや、行政情報システムなどの高いセキュリティ・レベルが必要とされているネットワーク向けで利用できる、多数のセキュリティ機能を実装した新バー

        NTT 東日本 - IPA 「シン・テレワークシステム」 - セキュリティ機能の大規模アップデートと実証実験の現状報告
      • この個人サイトは自作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で動いています
        • VM環境のCPU仮想化はどうやって実現しているのか ハードウェア仮想化支援機構の仕組み

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

            VM環境のCPU仮想化はどうやって実現しているのか ハードウェア仮想化支援機構の仕組み
          • ゼロからのハイパーバイザ自作入門

            本書では、Arm64 CPUアーキテクチャを前提としたハイパーバイザの仕組みをできるだけ分かりやすく解説し、実際にラズベリーパイ4やQEMUで動作するハイパーバイザ(Type1)を自作する方法を解説しています。 ⬛︎ 注意 本書はまだ作成中(現在4章を作成中)ですが、モチベーション維持のために公開している状態です(章立てなど今後変わる可能性ありです)。 内容は随時更新していますので、気になる方はウォッチやコメント等をお願いします。 ⬛︎ 学べること ・ハイパーバイザとその仕組みと原理 ・Arm64 (aarch64) アーキテクチャの仮想化支援機構の仕組み ・自作ハイパーバイザの作り方 ⬛︎ ソースコード https://github.com/HidenoriMatsubayashi/evisor ⬛︎ 価格 本書は無料にしていますが、役に立った!という方は「バッジを贈って応援」や「いいね

              ゼロからのハイパーバイザ自作入門
            • Infinite Mac

              Infinite Mac is a project by Mihai Parparita to make classic Mac and NeXT emulation easily accessible. It uses WebAssembly ports of Mini vMac, Basilisk II, SheepShaver, DingusPPC, and Previous to allow a broad set of System Software/Mac OS versions to run on the web. Shortcuts to the most popular versions are available: system6.app, system7.app, kanjitalk7.app, macos8.app, and macos9.app. FAQ How

              • フルスクラッチから作って理解するQEMU (Rust編) - FPGA開発日記

                モチベーション なぜ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による複数プラットフォーム対応として、まずは環境のそろ

                  フルスクラッチから作って理解するQEMU (Rust編) - FPGA開発日記
                • Visual Studio Code と Docker コンテナを使って開発する - Pepabo Tech Portal

                  技術部データ基盤チームの @zaimy です。今回は、 Visual Studio Code(以下 VS Code)と Docker コンテナを使って開発環境を構築する方法を紹介します。 データ基盤エンジニアの開発環境として、Python を使用する単一コンテナを例に記述しますが、他の言語や Docker Compose を使う場合でも応用できます。 背景: M1 Mac (Monterey) に Python 3.8.12 をインストールできない 先日、業務で使用するマシンを Intel Mac から M1 Mac に切り替えたのですが、CPU アーキテクチャが異なることに加えて、OS のバージョンが上がったことで Apple Clang に下位互換性のない変更が入っており、業務上ある理由で必要な Python 3.8.12 のインストールが困難でした。 そこで、私の所属するチームは全員

                    Visual Studio Code と Docker コンテナを使って開発する - Pepabo Tech Portal
                  • Docker + Mac どうする問題 - Mirrativ Tech Blog

                    Mirrativバックエンドのエンジニア @stakme です! みなさんMacでDockerしてますか?今回は私から、Mac+Docker開発についての文章をお届けします。Docker Desktop for Macの有料化など、最近話題の多いところですよね。 ただし法的問題を含みますので、記事の正確性に配慮していますが、内容は保証しません。法的問題は弁護士に相談しましょう。 tl;dr まずは現状認識 必要なのはdockerd 困りがちなポイント Lima Linux バインドマウント ポートフォワード 結局どうするか あと6週間 We are hiring! tl;dr 大前提として「GUIを使わければMac版Docker Desktopは無料」ではない Docker Desktop for Macは便利だが、マウント起因でパフォーマンスに影響を受けるケースも存在する 「買わないなら

                      Docker + Mac どうする問題 - Mirrativ Tech Blog
                    • シェル・ワンライナー 160 本ノックを完走した - NTT Communications Engineers' Blog

                      この記事は、 NTT Communications Advent Calendar 2022 4 日目の記事です。 こんにちは。 SDPF クラウド・仮想サーバーチームの杉浦です。 普段は OpenStack の開発・運用をしています。 みなさんはシェル芸と聞いてどのようなコマンドを想像しますか? 私は以下のような怖いコマンド 1 を想像していました # 無限に process を fork するコマンドです # 実行するときは自己責任でお願いします :(){ :|:& };: ですがシェル芸はもっと親しみやすくて 2 実用的なものです。 私はシェル芸のシェの字もできないくらいシェル芸初心者だったのですが、 1日1問、半年以内に習得 シェル・ワンライナー160本ノック という本を完走してシェル芸チョットワカルようになったので、本の宣伝をしつつ完走した感想を紹介しようと思います。 1日1問、

                        シェル・ワンライナー 160 本ノックを完走した - NTT Communications Engineers' Blog
                      • 「ARM」という単語の意味を啓蒙する記事 - Zopfcode Essay

                        同じARMだからといってポン付けでは動かんぞ定期 / 他6件のコメント https://t.co/ZW4ffdQP88 “「M1搭載MacでArm版Windows 10は動作可能。すべてマイクロソフト次第」アップル幹部が語る - Engadget 日本版” (23 users) https://t.co/aia65JYL5V— Takumi Sueda (@puhitaku) 2020年11月21日 追記: いろいろあって面白かったので、頂いたコメントの返信を末尾に追記しました 追記2: Engadget 日本版が閉鎖するため、上記記事「M1搭載MacでArm版Windows 10は動作可能。すべてマイクロソフト次第」アップル幹部が語るの魚拓を貼っておきます megalodon.jp 昨今の買収劇に始まり、というかそれ以前から、ARM (Arm) という固有名詞はコンピューターを語る上では

                          「ARM」という単語の意味を啓蒙する記事 - Zopfcode Essay
                        • jq 1.7をリリースしました - プログラムモグモグ

                          jqがjqlang organizationに移譲され、数名の新たなメンテナーを入れた開発体制に移行してから三か月が経ちました。 私にとってこの三か月はとても濃厚で、これまでのOSS活動の中でも特に大変な期間でした。 itchyny.hatenablog.com github.com リポジトリの管理権限をいただいてからまずやったことは、既存のissueやPRの整理でした。 500ほどのissueとPRに目を通し、ラベルをつけて、解決済みのものを閉じて、直近で入れたいものを独断でリリースマイルストーンに入れていきました。 この整理がついた頃には他のメンテナの活動も活発になり、私の作ったマイルストーンのissueやPRを確認してくれました。 そして先日、ようやく1.7をリリースしました。 1.6から実に五年弱、一時は開発が完全に止まってしまいプロジェクトの存続を危ぶむ声も上がるような状況から

                            jq 1.7をリリースしました - プログラムモグモグ
                          • めくるめくLinuxカーネルじゃないLinux実装の世界 - Qiita

                            EDIT^7: blink と box86、FEX。 EDIT^6: Unikraft 。 EDIT^5: Tilck 。 EDIT^4: コメント。gVisor はすっかり忘れていました!Linuxを拡張するためにLinuxを実装した良い例だと思います。LINE有りましたね。。 SF.netのCVSはもう死んでしまったので除外にしました。。 OSvのバイナリ互換 はPIEであることが要求なので。。といっても世間的にはもうLinux = Debian/Ubuntu で良いですかね。。表現を調整しました。 EDIT^3: Noah忘れてた! EDIT^2: Cygwinは 下書き段階で削ってしまった 。。 qemuを移植したとき に互換性がイマイチだったので。。特殊fdやprocfsの充実ぶりとかを考えると "かなりLinux" と言って良いとは思うけど、 mmap 等でLinuxとWind

                              めくるめくLinuxカーネルじゃないLinux実装の世界 - Qiita
                            • Qemuのしくみ (の一部) - VA Linux エンジニアブログ

                              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はコンピ

                                Qemuのしくみ (の一部) - VA Linux エンジニアブログ
                              • Linux が動作する RISC-V CPU を自作した (2019 年度 CPU 実験 余興)

                                私が所属する東京大学理学部情報科学科では三年の冬学期に CPU 実験という実験授業が開講されています。本稿ではその簡単な説明をした後、その実験の一環として約一ヶ月ほど取り組んだ「Linux が動作する RISC-V CPU を自作するプロジェクト」で何をしたか、またどのような成果を得たかについて紹介したいと思います。 本稿を読むその前に 弊学科では「XX 年度に教養学部から理学部情報科学科に進学してきた学生」を「XXer」と呼ぶ文化があります。本稿ではこの表現を断りなく用います1。また私は普段 Web が好きでもっぱら Web セキュリティに関することを追いかけているだけのしがない学部 3 年生なので (私についての情報は ここ に大体まとまっています)、こういう低いレイヤのことは未だによく分かっていません。あくまで素人の記事だとご理解いただけると嬉しいです。誤りの指摘や質問があれば、ここ

                                  Linux が動作する RISC-V CPU を自作した (2019 年度 CPU 実験 余興)
                                • GitHub ActionsでDocker Buildするときのキャッシュテクニック - cockscomblog?

                                  GitHub Actionsでdocker buildすることが多い。このときのキャッシュをどうするかという話題。 基本 GitHub Actionsでdocker buildしてAmazon ECRにdocker pushする、典型的な.github/workflow/docker-push-to-ecr.ymlはこういう感じ。 name: Push to Amazon ECR on: push: branches: [ 'main' ] jobs: docker: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - uses: docker/setup-buildx-action@v1 - name: Configure AWS credentials uses: aws-actions/configure-aws-c

                                    GitHub ActionsでDocker Buildするときのキャッシュテクニック - cockscomblog?
                                  • macOSでもWSLみたいなLinux環境を手に入れる - Qiita

                                    macOSでもLinuxの仮想環境が欲しい時はある Dockerを利用するなど、macOSであってもLinux環境が欲しい時はあります。 Microsoft365や、Adobe CCなど、macOSかWindowsでしか使えないプロプライエタリなソフトウェアを使う、開発もほとんどの場合macOSネイティブで問題ない、でもDockerも使う、などのように主たる作業はmacOSでやりながらLinuxもちょっと使わないといけないということは多々あります。 VirtualBoxなどを利用することによって、仮想環境にLinuxをインストールし利用することはできますが、WindowsにおけるWSL (Windows Subsystem for Linux) のようにネットワークやファイルシステムが統合されたように見える環境を構築するのは面倒です。 そこで、"macOS subsystem for Li

                                      macOSでもWSLみたいなLinux環境を手に入れる - Qiita
                                    • DockerユーザーのためのPodmanとBuildahの紹介 - 赤帽エンジニアブログ

                                      皆さま、こんにちは。Red Hatの西村(@iamnishipy)です。入社するまでDockerユーザーだった私が、わかりやすいと感じたPodmanの記事を共有いたします。 この記事はRed Hat DeveloperのPodman and Buildah for Docker usersを、許可を受けて翻訳したものです。 :::William Henry 2019年2月21日::: 最近Twitterにて、Dockerに詳しい人のためにPodmanとBuildahをよりよく説明してほしいと頼まれました。ブログやチュートリアル(後ほど紹介)はたくさんありますが、DockerユーザーがどのようにDockerからPodmanやBuildahに移行していくのかについて、私たちコミュニティから一元的な説明を行っていませんでした。Buildahはどのような役割を果たしているのでしょうか?Docker

                                        DockerユーザーのためのPodmanとBuildahの紹介 - 赤帽エンジニアブログ
                                      • AppleシリコンのMacでのDocker開発環境のパフォーマンス改善

                                        プロダクト開発部バックエンド開発グループでエンジニアをしています、おかだです。 ココナラには開発環境改善委員会があり、開発スピードの維持・改善に取り組んでいます。 本日は、取り組みの一環としてAppleシリコンのMacでのDocker開発環境のパフォーマンスを5-10倍程度改善したお話をしたいと思います。 はじめに AppleシリコンのMacが発表されてから数年が経ちました。ココナラでも昨年から導入が進んでおります。新しく入社したメンバへはM1 MacBook Pro(最近だとM2)が標準で支給されるようになっており、現在はIntel MacとM1 Macが混在して利用されている状況です。 バックエンドの開発では、ローカルでの動作確認や単体テストはコンテナ内で実行できるようになっています。 Dockerパフォーマンス問題 M1 Macを導入したメンバから 単体テストが遅い 静的解析が遅い

                                          AppleシリコンのMacでのDocker開発環境のパフォーマンス改善
                                        • GUIでDockerコンテナのビルドやPodsのKubernetesへの展開を可能にする「Podman Desktop」が登場。新たなDocker Desktop対抗となるか

                                          GUIでDockerコンテナやKubernetesの操作を可能にするオープンソースの「Podman Desktop」がリリースされたことをRed Hatが発表しました。Windows、Mac、Linuxに対応します。 Install, configure, and keep your container engine up to date with a GUI, which allows users to interact with containers and pods running in #Podman. Try Podman Desktop. https://t.co/5hPV8xOHYF — Red Hat Developer (@rhdevelopers) November 6, 2022 Podman DesktopはRed Hatが開発したDocker互換のツール「Podm

                                            GUIでDockerコンテナのビルドやPodsのKubernetesへの展開を可能にする「Podman Desktop」が登場。新たなDocker Desktop対抗となるか
                                          • M1搭載MacBook Airが届いたのでJavaやDockerなどいろいろベンチマークした - きしだのHatena

                                            M1 MacBook Airが届いていろいろやってたら年も明けてだいぶたったけども、ビルド速度とかJavaとかDockerとかTensorFlowとか、技術者が気になるベンチマークを試してたので、まとめました。 MacBook Airを買ってしまった なんかM1 Mac解説動画をとるためにいろいろ調べていたら、悪質サイトのリンクを踏んだみたいで、MacBook Airを買ってしまっていた。 その悪質サイトは最初は7万円台ですよーっていっておいて、結局12万円くらいになっていた。 みんなもapple.comってサイトには注意しましょうね。 www.youtube.com とどいた! 12/12到着予定といいつつ11日になっても羽田から動いてなかったので大丈夫かーと思ったら11日深夜というか12日未明というかそのあたりには福岡に届いてて、朝発想されて夜にとどいた。 でこれだ! ベンチマーク G

                                              M1搭載MacBook Airが届いたのでJavaやDockerなどいろいろベンチマークした - きしだのHatena
                                            • M1 Macに無料でWindows 11 Proをインストールした話。

                                              M1 Mac miniにWindows 11 Proをインストールした。 Intel版ではなくApple SiliconのM1チップへの導入ということで不安もあったが無事にインストールできたので、ブラジングや秀丸の導入、YouTube動画視聴など試した感想を記録したい。 M1 Mac miniにWindows 11を。 今回インストールしたのはMicrosoftが配布しているインサイダープレビュー版。 この取り組み自体は以前から存在していて目新しいモノではないが、IntelモデルではなくApple Siliconモデルでインストールしたことが大きな違いとなる。 実際に導入したところ64bit版のWindows 11 Proとして認識されていた。 Microsoftから仮想マシン用のファイルをインストールする際に「日本」という項目を積極的に選んだものの、インストールを済ませると「英語版」がベ

                                              • Repro のサーバーサイド開発環境を M1 Mac に対応させるまでの道のり - Repro Tech Blog

                                                Apple Silicon の時代が来る Repro でサーバーサイドの開発をお手伝いしているうなすけと申します。 2021年10月19日に行われた Apple の新製品発表において、M1 チップを搭載した MacBook Pro が発表されました。この発表により、Intel チップを搭載した MacBook はラインナップから消え、今後は M1 チップ上で開発する機会が増えることは確実です。 ところで、私達の開発環境は M1 に対応しているのでしょうか? 社内の開発メンバーの大半は MacBook を使用しているので、もし対応していない場合、なるべく早く対応させないと新しい社内端末を購入できなかったりするので、結構影響が大きいです。 またインターネット上で、M1 Mac を使用している人々からの「全然発熱しない」だとか「ファンが回ることがない」とか「電池の持ちがすごい」とかの良い評判を目

                                                  Repro のサーバーサイド開発環境を M1 Mac に対応させるまでの道のり - Repro Tech Blog
                                                • 「Rancher Desktop 1.0」正式リリース。Win/M1 Mac/Intel MacにコンテナとKuberntes環境を簡単に構築、設定できるElectronベースのアプリ

                                                  「Rancher Desktop 1.0」正式リリース。Win/M1 Mac/Intel MacにコンテナとKuberntes環境を簡単に構築、設定できるElectronベースのアプリ SUSEは、インストールして起動するだけでWindows やMac上に簡単にDockerコンテナとKubernetes環境が導入される「Rancher Desktop 1.0」を正式リリースしたと発表しました。 SUSEがRancher Labsを買収して最初の大きなプロダクトとなります。Windows、M1 Mac、Intel Mac、Linuxに対応します。 At SUSE, we want to make the experience of working with #Kubernetes on your desktop easier and simpler, which is why we are

                                                    「Rancher Desktop 1.0」正式リリース。Win/M1 Mac/Intel MacにコンテナとKuberntes環境を簡単に構築、設定できるElectronベースのアプリ
                                                  • 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 エンジニアブログ
                                                    • 円安を乗り越えるための Arm アーキテクチャへの移行が完了! そのプロセスを公開します - カミナシ エンジニアブログ

                                                      こんにちは。ソフトウェアエンジニアの坂井 (@manabusakai) です。 カミナシでは、クラウドインフラストラクチャに AWS を採用していますが、昨今の円安を受けて円換算での請求額は右肩上がりで増え続けています。サービスの規模や特性に関わらず、パブリッククラウドを利用する多くの日本企業で頭痛の種になっているのではないでしょうか。 円安になる前から継続的にコスト最適化には取り組んできましたが、クイックウィンで実施できるものはやり尽くしており手詰まり感がありました。しかし、我々スタートアップにおいて適正なコストに抑えることはランウェイ(キャッシュ不足に陥るまでの残存期間)を伸ばす意味でも重要なため、現状に甘んじることなく次の最適化ポイントを探していました。 Arm アーキテクチャ移行によるコスト最適化への期待値 AWS は Arm ベースの Graviton プロセッサを開発しており、

                                                        円安を乗り越えるための Arm アーキテクチャへの移行が完了! そのプロセスを公開します - カミナシ エンジニアブログ
                                                      • Linuxで動くNICドライバの開発をしている - BYB

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

                                                        • 個人的 M1 mac 開発環境状況 2021/12/02 更新

                                                          昨日 M1 mac が届いたので早速仕事に使える状況までセットアップしました。 できるだけ Intel アーキテクチャで動くものは入れたくない 開発系 開発環境とかエディタとか Visual Studio Code Electron が一応対応したっぽいので VScode insider のダウンロードページに Experimental 版としてdarwin arm native で動くバージョンが配布されています。 https://code.visualstudio.com/insiders/ しかし設定の同期で拡張機能を入れたらクラッシュ、必要最低限にしてもちょいちょいクラッシュするので stable の VScode を Rosetta 2 を通して使っています。 さすがに起動時の遅さが気になるのでやっぱ Experimental 版をメインに使ってます。クラッシュ頻度がなぜか減った

                                                            個人的 M1 mac 開発環境状況 2021/12/02 更新
                                                          • 「KubeVirt 1.0」正式リリース。Kubernetesで仮想マシンもコンテナも管理可能に

                                                            Cloud Native Computing Foundationは、仮想マシンをKubernetesで管理可能にする「KubeVirt」がバージョン1.0に到達したことを発表しました。 Kubernetesは起動中の多数のコンテナを管理し、ワークロードを割り当てるなど、コンテナベースのオーケストレーションツールとして開発されました。 KubeVirtはそのKubernetesにおいて、コンテナと同じように仮想マシンを管理可能にするソフトウェアです。 QEMUとlibvirtで仮想化レイヤをコンテナ化 具体的には、QEMUとlibvirtが用いられた仮想化レイヤをKubernetesで扱わせることが可能になります。 これにより例えばデータベースのようなコンテナよりも仮想マシン上で実行することが望ましいと考えられるアプリケーションを、仮想マシンのままでKubernetesを用いて管理可能です

                                                              「KubeVirt 1.0」正式リリース。Kubernetesで仮想マシンもコンテナも管理可能に
                                                            • Rust言語でファームウェア、OS、言語処理系を実装して、CSS 2020で発表した - 未完成な論を綴るブログ

                                                              先月、国内最大のセキュリティ研究会であるコンピュータセキュリティシンポジウム 2020(CSS 2020)が開催され、そこで、Rust言語を用いてファームウェア、OS、言語処理系を設計・実装した話を発表しました。本来、CSS 2020はリアルで開催されるはずでしたが、コロナ禍の影響でオンライン開催となり発表動画作成が求められました。せっかく作った動画をこのまま捨て置くのももったいないと思い、ここで供養したいと思います。 www.youtube.com 概要 内容は、Rust言語を用いて、AArch64のセキュアワールド内で動作するファームウェア、OS、プログラミング言語処理系を実装した話となります。と言っても、まだまだ基本的な部分しか実装しておらず、実現目標に対して2〜3割と言ったところですが、どうぞご笑覧ください。 ブート部分は多少アセンブリ言語を使っていますが、その他の部分はRustで

                                                                Rust言語でファームウェア、OS、言語処理系を実装して、CSS 2020で発表した - 未完成な論を綴るブログ
                                                              • さくらのクラウド10年間を振り返る

                                                                アーカイブ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年後に見返したら面白いだろうなと思え

                                                                  さくらのクラウド10年間を振り返る
                                                                • Apple M1チップ対応「Docker Desktop」、x86用のコンテナイメージのビルドと実行も可能。Docker社が説明

                                                                  Apple M1チップ対応「Docker Desktop」、x86用のコンテナイメージのビルドと実行も可能。Docker社が説明 Docker社は、現在テクニカルプレビューとして提供されているApple M1チップ対応の「Docker Desktop for Mac」がマルチCPUアーキテクチャ対応として開発されており、ARM用コンテナイメージに対応するだけでなく、x86用コンテナイメージのビルドと実行にも対応することを「Download and Try the Tech Preview of Docker Desktop for M1」で説明しました。 「Download and Try the Tech Preview of Docker Desktop for M1」から引用します。 The new Docker Desktop on M1 is no exception; you

                                                                    Apple M1チップ対応「Docker Desktop」、x86用のコンテナイメージのビルドと実行も可能。Docker社が説明
                                                                  • Apple Silicon搭載MacでWindowsを正常に動作させることに成功

                                                                    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

                                                                      Apple Silicon搭載MacでWindowsを正常に動作させることに成功
                                                                    • GitHub Actions上のRustアプリのDockerイメージビルドを高速化する - blog.endflow.net

                                                                      Rust + Docker + GitHub Actions = めちゃ遅い 以前、GitHub Actions 上の Rust ビルドを高速化する記事を書いたけど、 今回は Kubernetes 環境にスムーズに移行できるよう Docker イメージ化するという要件も加わったことで、改めて試行錯誤する必要が出てきた。 それぞれに対するビルド速度の最適化は存在しているものの、3つ (Rust, Docker, GitHub Actions) すべてを満たすとなるとコピペで終わるほど情報がまとまってないし、見つけた Tips もちょっと古かったり、これというものは見つけられなかった。 公式ドキュメントを見ると正当進化していて新しいオプションが生えていたりしたので、賞味期限は短そうだけど、自分の試行錯誤の結果を残しておこうと思う。 成果としては 12 分 22 秒かかっていた Rust アプリ

                                                                      • Infinite Mac

                                                                        Infinite Mac is a project by Mihai Parparita to make classic Mac and NeXT emulation easily accessible. It uses WebAssembly ports of Mini vMac, Basilisk II, SheepShaver, DingusPPC, and Previous to allow a broad set of System Software/Mac OS versions to run on the web. Shortcuts to the most popular versions are available: system6.app, system7.app, kanjitalk7.app, macos8.app, and macos9.app. FAQ How

                                                                        • Docker for Apple Siliconの仮想化基盤が変わるかもな話

                                                                          Apple Silicon向けのDocker Desktop RC 2で、バックエンドを切り替えられるオプションが追加されました。 今までのqemuベースのバックエンド以外に、virtualization.frameworkを使ったバックエンドも追加されて、オプションのexperimentalのチェックボックスで有効化できます。 といっても、qemuも裏ではHypervisor.frameworkを利用していたので、Appleの提供する仕組みには乗っています。Virtualization.frameworkは高水準なAPIでLinuxに特化してます。VZLinuxBootLoaderというAPIが提供されています。 Virtualization.Frameworkも現在はおそらくはHypervisor.frameworkの上に構築されていると思います。実際、このオプションのON/OFFを切

                                                                            Docker for Apple Siliconの仮想化基盤が変わるかもな話
                                                                          • Docker互換のコンテナエンジン「Podman 5.0」正式リリース。Macでの安定性や性能が大幅に向上

                                                                            Docker互換のコンテナエンジンとしてRed Hatが主導して開発しているオープンソース「Podman」の2年振りのメジャーバージョンアップ「Podman 5.0」が正式にリリースされました。 PodmanはDocker互換のコマンドラインツールを備え、OCI(Open Container Initiative)互換のDockerイメージを操作可能なコンテナエンジンです。 デーモンを使わず軽量で高速に動作すること、ルートレスでコンテナを操作できるためセキュアなことなどを大きな特徴としており、PodmanからKubernetesのYAMLファイルを生成できるため、Kubernetesとの連係も容易とされています。 今回のPodman 5.0では、WindowsやMacの上でLinuxコンテナを利用可能にするための仮想マシンを実行するPodman Machineが全面的に書き換えられ、性能と

                                                                              Docker互換のコンテナエンジン「Podman 5.0」正式リリース。Macでの安定性や性能が大幅に向上
                                                                            • Apple M1チップ搭載のMacでARM版Windows 10を動作させるQEMUラッパー「ACVM」がリリース。

                                                                              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

                                                                                Apple M1チップ搭載のMacでARM版Windows 10を動作させるQEMUラッパー「ACVM」がリリース。
                                                                              • Zig で簡単な JSON パーサを書いてみた。

                                                                                #include <stdio.h> int main(int argc, char* argv[]) { int i; for (i = 1; i <= 100; i++) { if (i % 15 == 0) puts("FizzBuzz"); else if (i % 15 == 0) puts("FizzBuzz"); else if (i % 3 == 0) puts("Fizz"); else if (i % 5 == 0) puts("Buzz"); else printf("%d\n", i); } return 0; } fn main() { let mut x = 1; while x <= 100 { if x % 15 == 0 { println!("FizzBuzz"); } else if x % 3 == 0 { println!("Fizz"); } e

                                                                                  Zig で簡単な JSON パーサを書いてみた。
                                                                                • フルスクラッチでQEMU型自作エミュレータはどう作る? Rustを使った自作バイナリ変換型シミュレータ

                                                                                  Kernel/VM探検隊はカーネルや仮想マシンなどを代表とした、低レイヤーな話題でワイワイ盛り上がるマニアックな勉強会です。msyksphinz氏は、自作エミュレータで得た学びについて発表しました。全2回。前半は、自作エミュレータの実装とその結果について。 実機が存在しなくてもエミュレータを使えば動きの中身が見える msyksphinz氏(以下、msyksphinz):「Rustで作るフルスクラッチQEMU型エミュレータ」と題して、発表をします。 簡単に自己紹介をさせてください。Twitterだとこういうアカウントでいろいろと活動しています。趣味で「FPGA開発日記」というブログを書いていて、RISC-V、FPGA、CPU、低レイヤプログラミングなど、興味のあるものの記事を書いています。本業はハードウェア開発エンジニアをしていて、汎用CPUの設計などの仕事をしています。 今回はRustとい

                                                                                    フルスクラッチでQEMU型自作エミュレータはどう作る? Rustを使った自作バイナリ変換型シミュレータ