6.2 か月の開発を経て、DragonFlyBSD 2003 のリリースが公開されました。これは、FreeBSD 4.x ブランチの代替開発を目的として XNUMX 年に作成されたハイブリッド カーネルを備えたオペレーティング システムです。 DragonFly BSD の機能の中で、分散バージョン ファイル システム HAMMER、ユーザー プロセスとしての「仮想」システム カーネルのロードのサポート、SSD ドライブ上のデータと FS メタデータのキャッシュ機能、コンテキスト依存のバリアント シンボリック リンク、プロセスの状態をディスクに保存しながらプロセスをフリーズするには、軽量スレッド (LWKT) を使用するハイブリッド カーネルを使用します。
DragonFlyBSD 6.2 で追加された主な改良点:
- NVMM ハイパーバイザーは NetBSD から移行され、AMD CPU のハードウェア仮想化メカニズム SVM および Intel CPU の VMX をサポートします。 NVMM では、ハードウェア仮想化メカニズムに関する必要最小限のバインディング セットのみがカーネル レベルで実行され、すべてのハードウェア エミュレーション コードはユーザー空間で実行されます。 libnvmm ライブラリに基づくツールは、仮想マシンの作成、メモリ割り当て、VCPU 割り当てなどのタスクの実行に使用され、qemu-nvmm パッケージはゲスト システムの実行に使用されます。
- HAMMER2 ファイル システムの開発は継続され、スナップショットの個別マウント、書き込み可能なスナップショット、ディレクトリ レベルのクォータ、増分ミラーリング、さまざまなデータ圧縮アルゴリズムのサポート、複数のホストへのデータ分散を伴うマルチマスター ミラーリングなどの機能が特徴です。新しいリリースでは、growfs コマンドのサポートが導入され、既存の HAMMER2 パーティションのサイズを変更できるようになります。これには、リモート システムから HAMMER2 パーティションをマウントできるようにする xdisk コンポーネントの実験的なサポートが含まれています。
- DRM (ダイレクト レンダリング マネージャー) インターフェイス コンポーネント、TTM ビデオ メモリ マネージャー、および amdgpu ドライバーは Linux カーネル 4.19 と同期されており、最大 3400G APU の AMD チップのサポートを提供することが可能になりました。 Intel GPU 用の drm/i915 ドライバーが更新され、Whiskey Lake GPU のサポートが追加され、起動時のクラッシュの問題が解決されました。 Radeon ドライバーは、TTM ビデオ メモリ マネージャーを使用するように変換されました。
- ポーリング呼び出しは、名前のないパイプまたは FIFO の 2 番目の端が閉じられたときに返される POLLHUP イベントのサポートを提供します。
- このカーネルでは、メモリ ページ処理アルゴリズムが大幅に改善され、スワップ パーティションに移動するページを選択する際の効率が向上し、メモリ量が少ないシステム上のブラウザなどのリソースを大量に消費するアプリケーションの動作が大幅に改善されました。
- たとえばデータ ブロックがブロック デバイス レベルで追加でキャッシュされる場合など、あまりにも多くの vnode をキャッシュするとパフォーマンスが低下する可能性があるため、カーネル メモリの消費量を削減するために maxvnodes の計算を変更しました。
- BeFS ファイル システムのサポートが fstyp ユーティリティに追加されました。 FAT ファイル システムのサポートは、FreeBSD から makefs に移行されました。 fsck および fdisk ユーティリティのパフォーマンスが向上しました。 ext2fs および msdosfs コードのバグを修正しました。
- ネットワーク インターフェイスのハードウェア アドレスを取得するための ioctl SIOCGHWADDR を追加しました。
- ipfw3nat は、icmp idport の再利用によって実装された ICMP パケットの NAT サポートを追加します。
- ichsmb ドライバーには、Cannonlake、Cometlake、Tigerlake、および Geminilake チップ用の Intel ICH SMBus コントローラーのサポートが追加されました。
- initrd ファイルの生成は、vn の使用から makefs の使用に切り替えられました。
- 関数 getentropy()、clearenv()、および mkdirat() が libc 標準ライブラリに追加されました。 shm_open() および /var/run/shm 実装と他のシステムとの互換性が向上しました。プラットフォーム固有の __double_t および __float_t タイプを追加しました。暗号化関連の関数が libdmsg に返されました。 pthread のパフォーマンスが向上しました。
- DPort バイナリ リポジトリのローカル アセンブリとメンテナンス用に設計された dsynth ユーティリティに、「-M」オプションと PKG_COMPRESSION_FORMAT 変数が追加されました。 pkg 1.17 パッケージ マネージャーと pkg メタデータの XNUMX 番目のバージョンのサポートが提供されました。
- OpenPAM Tabebuia PAM ライブラリ、passwdqc 2.0.2 パスワード チェック ユーティリティ、mandoc 1.14.6、OpenSSH 8.8p1、dhcpcd 9.4.1、および file 5.40 パッケージがパッケージにインポートされます。
- ユーザーがシステム上で権限を昇格できる可能性がある、カーネル内のローカルで悪用可能な脆弱性を修正しました (CVE は報告されていません)。
- Windows からバイナリ NDIS ドライバーを使用できるようにする ndis ドライバーは削除されました。
- a.out 実行可能ファイル形式のサポートは廃止されました。
出所: オープンネット.ru