Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 24 Jan 2004 20:51:17 -0800 (PST)
From:      wpaul@FreeBSD.ORG (Bill Paul)
To: (Dev Tugnait)
Subject:   Re: Project Evil: The Evil Continues
Message-ID:  <>
In-Reply-To: <> from Dev Tugnait at "Jan 24, 2004 10:58:58 pm"

next in thread | previous in thread | raw e-mail | index | archive | help
> What in the world is Project Evil?

Project Evil (aka the NDISulator) is a special binary compatibility
layer for the FreeBSD kernel that lets you use Windows NDIS drivers
for network adapters with FreeBSD/ia32.

What does Project Evil do:

- Provides a small Windows PE file relocator/dynamic linker
  to allow Windows .sys files to be interfaced with the native
- Provides a utility to parse Windows .inf files to extract
  device identification data and registry keys.
- Emulates large chunks of NDIS.SYS, HAL.dll and ntoskrnl.exe
  with native FreeBSD kernel routines.
- Interfaces the NDIS packet/buffer model with the BSD ifnet/mbuf
  model, making an NDIS driver look like an ifnet interface to
  the FreeBSD kernel.
- Supports PCI and cardbus devices (and PCMCIA too, eventually).

What doesn't Project Evil do:

- Provide support for USB network devices (this would require
  emulating portions of USBD.SYS and portitions of the Windows
  I/O model outside of the NDIS API).
- Support Winows modem drivers (this would mean duplicating
  big parts of ntoskrnl.exe).


-Bill Paul            (510) 749-2329 | Senior Engineer, Master of Unix-Fu
        | Wind River Systems
              <adamw> you're just BEGGING to face the moose

Want to link to this message? Use this URL: <>