
ウェブ上では、esxi 5 カーネルは Linux カーネルに基づいていないと言っている人が多いのですが、同時に「ESX(i) には Linux ドライバ互換モードが含まれています (ドライバは ESXi 専用にコンパイルする必要があります)」とも言っています。そこで私の単純な質問は、この vmkernel が Linux カーネルに基づいていない場合、Linux ドライバを esxi 5 カーネルに移植するにはどうすればよいかということです。
私はesxi 5用のmegaraidソースコードドライバをダウンロードし、このファイルmegaraid_sas.ciでこれを見ました
* Send feedback to: <[email protected]>
*
* Mail to: LSI Corporation, 1621 Barber Lane, Milpitas, CA 95035
* ATTN: Linuxraid
*/
#include <linux/kernel.h>
#include <linux/types.h>
#include <linux/pci.h>
#include <linux/list.h>
#include <linux/moduleparam.h>
#include <linux/module.h>
#include <linux/spinlock.h>
#include <linux/interrupt.h>
#include <linux/delay.h>
#include <linux/uio.h>
#include <asm/uaccess.h>
#include <asm/div64.h>
#include <linux/fs.h>
#include <linux/compat.h>
#include <linux/blkdev.h>
#include <linux/mutex.h>
#if defined(__VMKLNX__)
#include <linux/miscdevice.h>
#include <scsi/scsi_tcq.h>
#include "vmklinux_scsi.h"
#endif
#include <linux/poll.h>
#include <scsi/scsi.h>
#include <scsi/scsi_cmnd.h>
#include <scsi/scsi_device.h>
#include <scsi/scsi_host.h>
私が理解している限りでは、vmkernelはLinuxカーネルに基づいていませんが、Linuxカーネルヘッダーを使用しています。
答え1
ここに質問は見当たりません...
VMware カーネルは Linux ではありません... ただし、修正された Busybox ユーザー ランドが表示されます。 さらに、コア ドライバー サポートの多くは、既存の Linux ドライバー ベースから派生しています。