I was trying to use coLinux 0.6.4, but no matter what I try it won't recognize the root file system.  It seems like the problem is either the initrd.gz file, or the kernel.  I am not sure which.  For example I downloaded the Debian image and renamed it root_fs so I could use the default.colinux.xml file.  (That way I am certain I am not making a typo.)  But this is what I get:

$ ./colinux-daemon.exe -c default.colinux.xml
auto selecting TAP
TAP device not found
Cooperative Linux Daemon, 0.6.4
Compiled on Mon May 29 22:19:09 2006

mapping cobd0 to \DosDevices\c:\coLinux\root_fs
mapping cobd1 to \DosDevices\c:\coLinux\swap_device
Linux version 2.6.11-co-0.6.4 (george@CoDebianDevel) (gcc version 3.4.4 20050314 (prerelease) (Debian 3.4.3-13)) #1 Mon 64MB LOWMEM available.
initrd enabled: start: 0xc3e07000  size: 0x001f812b)
On node 0 totalpages: 16384
  DMA zone: 0 pages, LIFO batch:1
  Normal zone: 16384 pages, LIFO batch:4
  HighMem zone: 0 pages, LIFO batch:1
Built 1 zonelists
Kernel command line: root=/dev/cobd0
Initializing CPU#0
Setting proxy interrupt vectors
PID hash table entries: 512 (order: 9, 8192 bytes)
Using cooperative for high-res timesource
Console: colour CoCON 80x25
Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)
Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)
Memory: 59264k/65536k available (1537k kernel code, 0k reserved, 521k data, 108k init, 0k highmem)
Calibrating delay loop... 1222.24 BogoMIPS (lpj=6111232)
Mount-cache hash table entries: 512 (order: 0, 4096 bytes)
CPU: After generic identify, caps: 078bfbff e1d3fbff 00000000 00000000 00000000 00000000 00000000
CPU: After vendor identify, caps: 078bfbff e1d3fbff 00000000 00000000 00000000 00000000 00000000
CPU: L1 I Cache: 64K (64 bytes/line), D cache 64K (64 bytes/line)
CPU: L2 Cache: 512K (64 bytes/line)
CPU: After all inits, caps: 078bfbff e1d3fbff 00000000 00000010 00000000 00000000 00000000
CPU: AMD Athlon(tm) 64 Processor 3200+ stepping 00
Enabling fast FPU save and restore... done.
Enabling unmasked SIMD FPU exception support... done.
Checking 'hlt' instruction... OK.
checking if image is initramfs...it isn't (no cpio magic); looks like an initrd
Freeing initrd memory: 2016k freed
NET: Registered protocol family 16
devfs: 2004-01-31 Richard Gooch (rgooch@atnf.csiro.au)
devfs: boot_options: 0x0
cofuse init 0.1 (API version 2.2)
Initializing Cryptographic API
serio: cokbd at irq 1
io scheduler noop registered
io scheduler anticipatory registered
io scheduler deadline registered
io scheduler cfq registered
RAMDISK driver initialized: 16 RAM disks of 4096K size 1024 blocksize
cobd: loaded (max 32 devices)
loop: loaded (max 8 devices)
conet: loaded (max 16 devices)
conet0: initialized
mice: PS/2 mouse device common for all mice
input: AT Translated Set 2 keyboard on cokbd
NET: Registered protocol family 2
IP: routing cache hash table of 512 buckets, 4Kbytes
TCP established hash table entries: 4096 (order: 3, 32768 bytes)
TCP bind hash table entries: 4096 (order: 2, 16384 bytes)
TCP: Hash tables configured (established 4096 bind 4096)
NET: Registered protocol family 1
NET: Registered protocol family 17
RAMDISK: Compressed image found at block 0
EXT2-fs warning: checktime reached, running e2fsck is recommended
VFS: Mounted root (ext2 filesystem).
VFS: Cannot open root device "cobd0" or unknown-block(117,0)
Please append a correct "root=" boot option
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(117,0)