Jump to content











Photo
* * * * - 3 votes

WinVBlock


  • Please log in to reply
623 replies to this topic

#151 Sha0

Sha0

    WinVBlock Dev

  • Developer
  • 1682 posts
  • Location:reboot.pro Forums
  • Interests:Booting
  •  
    Canada

Posted 10 January 2010 - 10:46 PM

jaclaz: Yes, Alfred and I go way back. I am investigating the matter of booting from a file-backed disk a little more before reporting that it's definitely possible. Of course, they're computers; anything's possible. The ease or difficulty of coding it is the matter at hand.

Why the name change? Was someone executing a distributed denial of service attack on your name? Is that why Boot-Land was unavailable much of this last week? Will we ever see the original jaclaz again? :confused1:

sebus: I have not tried it myself, but I would guess that it is possible to make a Windows installation CD .ISO a RAM optical disc and to make a floppy image with the WinVBlock files on it a RAM floppy disk, then to load WinVBlock from the floppy using F6, etc., etc. How you would do so would depend on your choice of MEMDISK or GRUB4DOS.

As far as Windows 7 goes, I still have a ten-foot pole that I refuse to touch Windows 7 with for the time being. If somebody cares to try the driver out, that'd be great. The driver is unsigned, so folks would have to keep that in mind. There might be driver development standards changes, too.

HTTPDisk code has not yet been developed. When it is, the driver will require that Windows TCP/IP drivers are loaded at boot time as dependencies, just as it currently requires NDIS.SYS to continue to support AoE SAN disks.

You should be aware that PXELINUX can use HTTP instead of TFTP, as long as PXELINUX was booted from gPXE. PXELINUX will detect gPXE and be able to use its HTTP stack. Thus you can download your RAM disk via HTTP, as you wish. H. Peter Anvin and possibly others have been working on porting the lightweight IP stack over to Syslinux; HTTP support might be natively available in PXELINUX some day.

I've added two simple examples to the thread's original post. I hope they're useful.

acus: I appreciate the report and have confirmed with my Windows 2003 BartPE testing .ISO. Sorry all! I might have forgotten to mention that in PE environments or for the XP/2003 Recovery Console/Installation, you must use the /WINVBLOCK=BUS=1 switch in your TXTSETUP.SIF. I appreciate your scripts, and would appreciate it if you could add that to your script. It goes on the OsLoadOptions line.

Wait a minute... I guess that means one would have to hack the TXTSETUP.SIF file on an XP/2003 installation .ISO... Hmm... This is so tough! If WinVBlock automatically creates a SCSI adapter (bus) device to support those scenarios, it will also do so for a full Windows, meaning that folks who use the Add Hardware Wizard to install it will wind up with two bus devices on the next boot (but no more than that on subsequent boots). One of the devices would not be used. That would be ugly. I guess WinVBlock needs a way to determine if it's a full Windows boot or if it's PE/installation/RC. Have to think about this some more...

- Sha0

#152 Wonko the Sane

Wonko the Sane

    The Finder

  • Advanced user
  • 15386 posts
  • Location:The Outside of the Asylum (gate is closed)
  •  
    Italy

Posted 10 January 2010 - 11:18 PM

jaclaz: Yes, Alfred and I go way back.

Posted Image

Are you the white or the black chap?

:rolleyes:

I am investigating the matter of booting from a file-backed disk a little more before reporting that it's definitely possible. Of course, they're computers; anything's possible. The ease or difficulty of coding it is the matter at hand.

Yep, that's EXACTLY what you are NOT payed for. ;)


Why the name change?

A queer question coming from Andy Tim Sha0, isn't it? :cheers:

Was someone executing a distributed denial of service attack on your name? Is that why Boot-Land was unavailable much of this last week?

NO , whatever happened was only and merely a coincidence with the resigning and name change:
http://www.boot-land...showtopic=10068

Will we ever see the original jaclaz again? :)

Unlikely on boot-land.
I would estimate it at a probability factor of two to the power of seventy-five thousand to one against. :confused1:

:cheers:

Wonko

#153 acus

acus

    Member

  • Members
  • 37 posts
  •  
    Italy

Posted 11 January 2010 - 04:30 AM

Hi Shao,

your suggestion is correct.

Now my LiveXP_RAM.iso works well in virtualbox.

I'll update the script and post it later.

Do you mind, if I attach the zipfile of winvblock in the script, to make it easier?

Best regards.

#154 Sha0

Sha0

    WinVBlock Dev

  • Developer
  • 1682 posts
  • Location:reboot.pro Forums
  • Interests:Booting
  •  
    Canada

Posted 11 January 2010 - 05:46 AM

... Do you mind, if I attach the zipfile of winvblock in the script, to make it easier?...


Thank you for asking. No, I don't mind at all. I am happy to provide WinVBlock as free, open-source software (FOSS). The more that the source and binaries are distributed, the less likely that the project is lost forever due to limited sources for availability. If gPXE's web-site and Boot-Land both go away, there's not really anywhere else to get it from at the moment. Spread it as much as you like, as long as you abide by the GPL. For example, you can download a .ZIP file from the top-right of the appropriate commit at http://git.etherboot....git;a=shortlog and be ready to provide that source code archive to anybody who might demand it as per the GPL.

It's seeming to me like the Add Hardware Wizard installation procedure might go away at some point soon in favour of a different installation means. At that time, it's likely that the /WINVBLOCK=BUS=1 switch will no longer be needed; there will be some other way that WinVBlock determines if it should automatically create the SCSI adapter (bus) device. At this time, you definitely need that switch for PE/Rec. Con./installation (collectively, "setup") scenarios with version 0.0.1.5.

#155 Sha0

Sha0

    WinVBlock Dev

  • Developer
  • 1682 posts
  • Location:reboot.pro Forums
  • Interests:Booting
  •  
    Canada

Posted 14 January 2010 - 07:23 PM

Attached is version 0.0.1.6. This version removes the need to prefix \??\ before the path for file-backed disks. Also, handles to those files are no longer leaked. Enjoy. - Sha0

Attachment removed -- Obsolete due to newer version; check post #1 for download link.
202 downloads at time of removal.


#156 Krokodox

Krokodox

    Newbie

  • Members
  • 21 posts
  •  
    Sweden

Posted 14 January 2010 - 07:40 PM

Attached is version 0.0.1.6. This version removes the need to prefix \??\ before the path for file-backed disks. Also, handles to those files are no longer leaked. Enjoy. - Sha0




Whoa! Nice! :cheers: I have been playing around a lot with 0.0.1.5 today and must say that nLite + PXE / gPXE / MEMDISK / WinVBlock is a smooth and extremely nice combination.

I have also tried the file-backed disks and it is a really good addition to WinVBlock. :rolleyes:

One little request if I may: Please remove the need to press Enter when using "winvblk.exe show" command, it makes it harder to script the usage of attach / detach. Also, the disk# does not seem to match the one shown in Windows Disk Management?

Oh, and I have another request while I am still at it :confused1: Would it be possible for winvblk.exe to create the appointed image if it does not find it? That way it would be a lot easier to re-image a running RAM-based installation into a new (smaller or larger depending on need) image after installation / tweaking.

There is one more thing that attach / detach needs in order to work perfectly, and that is the detach part. Once I let WinVBlock attach to an imagefile and then copy something to the new drive and then detach from the imagefile then I get warnings in the Event Viewer about flushing not being able to complete and that PnP pulled the drive without it being setup for removal (I am writing this from memory but if you need the exact error messages let me know!)


Anyways, many thanks for this great product! As far as I am concerned this is one of the best thing that has happened for Windows in a long, long time. Keep up the good work!

#157 Lancelot

Lancelot

    Frequent Member

  • .script developer
  • 5013 posts
  • Location:Turkiye/Izmir
  • Interests:*Mechanical stuff and Physics,
    *LiveXP, BartPE, SherpyaXPE,
    *Basketball and Looong Walking,
    *Buying outwear for my girlf (Reason: Girls are stupid about buying bad stuff to make themselves uglier :))
    *Girls (Lyric: Girl,...., You will be a womann, Soon)
    *Answering questions for "Meaning of life",
    *Helping people,

    Kung with LiveXP, Fu with Peter :)
  •  
    Turkey

Posted 18 January 2010 - 07:16 AM

Hi Sha0,

i noticed no x64 version inside WinVBlock_0.0.1.6.zip , just tested with 0.0.1.2 x64 and worked nice for me. I hope x64 files present on next version.
Thanks a lot for all.
:confused1:

#158 i

i

    Silver Member

  • Advanced user
  • 539 posts
  •  
    United Nations

Posted 06 February 2010 - 08:23 PM

;) Hi :P

My configuration Boot partition 2.10 GB (FAT32)
BootMagic
--> Windows XP BOOT.INI --> (XP + GRUB)
--> Apple Mac OSX (Hackintosh)
--> Win7 x64
All on Primary partition AHCI iaStor


Well, I installed the latest version of WinVBlock driver on XP (checked in device manager, saw 1 new entry "WinVBlock driver"). Next, I removed some entires HKLM\SYSTEM\MountedDevices key (C: and all with SID) next, restarted to Hiren's BootCD 9.7's Mini Windows XP, created SFX RAR backup of entire XP parition (incl BootMagic + Grub + Win files) and restarted to XP as usual.

Now mounted a file that came with guide of Firadisk 2.0.IMA and injected my entire backup to that IMA and unmounted.

title Boot XP from RAMDisk
find --set-root /2.ima
map --mem-min=4G
map --mem /2.ima (hd0)
map --hook
root (hd0,0)
chainloader /ntldr


BSOD STOP! 7B! :cheers: hehe at least i got to the XP LOGO :cheers: I guess there is no easy way out of this... I read plenty of pages of this thread, its interesting when first two guys reported "it WORKS" :P If anyone knows a shortcut I'm really willing to try :cheers:

EDIT: To make my pickle experiment interesting, I've added DELAY to Boot.INI and when XP started from RAM, I tried SAFEMODE (to see what driver is last loaded before BSOD, well its "ACPITABLE something" but looking at the past replies of this thread (which i read in hurry... bla bla bla etc) I recall something about NDIS or something not loaded hehe.... (wonder what page that was... :P )

#159 Sha0

Sha0

    WinVBlock Dev

  • Developer
  • 1682 posts
  • Location:reboot.pro Forums
  • Interests:Booting
  •  
    Canada

Posted 08 February 2010 - 05:14 AM

Now mounted a file that came with guide of Firadisk 2.0.IMA and injected my entire backup to that IMA and unmounted.

How big is this file? How much RAM does the system have?

EDIT: To make my pickle experiment interesting, I've added DELAY to Boot.INI and when XP started from RAM, I tried SAFEMODE (to see what driver is last loaded before BSOD, well its "ACPITABLE something" but looking at the past replies of this thread (which i read in hurry... bla bla bla etc) I recall something about NDIS or something not loaded hehe.... (wonder what page that was... :lol: )

If you add /SOS to your BOOT.INI, you should see NDIS.SYS and WVBLK32.SYS are both loaded. I would expect that this is true, because you seem to be saying that you copied an entire XP installation into this 2.ima file, and you had installed WinVBlock into that installation before-hand.

Please be sure you are using the right HAL and kernel for the system, too.

WinVBlock 0.0.1.6 has been very stable for me.

#160 dog

dog

    Frequent Member

  • Expert
  • 236 posts

Posted 08 February 2010 - 01:41 PM

Unless winvblock supports PAE, I reckon this bit is the problem:
map --mem-min=4G

#161 i

i

    Silver Member

  • Advanced user
  • 539 posts
  •  
    United Nations

Posted 08 February 2010 - 07:11 PM

Unless winvblock supports PAE, I reckon this bit is the problem:
map --mem-min=4G

Oh... :cheers: I was told by kayronix about that line, thought WinVBlock supported that too.



@Sha0
In one of the guide, there were multiple images of IMA packed in one zip. 1.0=1GB, 2.0=2GB and so on with 1.1.IMA=1.1GB. (I'm using 2 GB IMA) My system has 8GB RAM.

Please be sure you are using the right HAL and kernel for the system, too.

:cheers: OOoooKKkkk, what is that? Files are pretty much original clone of my real partition besides that, do you want me to put some Win2k3 patched something? (i read something like that... somewhere ;) )

My doubts:
1. gavotte's rramdisk with PAE was not UNinstalled before above steps. (conflicts?)
2. Dog's post (saying WinVBlock not supporting PAE?)
3. HAL & Kernel

EDIT: Sha0 All right, I found one link from your reply http://www.etherboot...t_winnt_sanboot will check it out soon ;) (too late for now, real life work waiting)

#162 dog

dog

    Frequent Member

  • Expert
  • 236 posts

Posted 09 February 2010 - 12:33 PM

A 2GB image will be fine without PAE, so I'd leave out the
map --mem-min=4G
at least until you've got something working.
If you're booting the image on the same PC that you cloned, then the hal and kernel will be the right ones too (as long as you're booting it on the physical machine rather than a VM).

No idea about conflict from Gavotte's...

#163 i

i

    Silver Member

  • Advanced user
  • 539 posts
  •  
    United Nations

Posted 09 February 2010 - 03:37 PM

A 2GB image will be fine without PAE, so I'd leave out the
map --mem-min=4G
at least until you've got something working.
If you're booting the image on the same PC that you cloned, then the hal and kernel will be the right ones too (as long as you're booting it on the physical machine rather than a VM).

No idea about conflict from Gavotte's...

For the purpose of trying, I will not mind removing the 4G line but it is important to me because I do not want my x86 system to only see (3.25 - 2GB) = 1.2X GB RAM, then again if this is the issue, I'll hate to put Pagefile path on that 4G RamDisk (which is what i do currently with govatte's) :cheers:

#164 karyonix

karyonix

    Frequent Member

  • Advanced user
  • 473 posts
  •  
    Thailand

Posted 09 February 2010 - 05:00 PM

@Lama
I think you should try it without Gavotte's RAM disk.
If you really want to use Gavotte's RAM disk (UsePAE=1) with WinVBlock or FiraDisk your should make sure their RAM don't overlap.
You can enumerate available RAM region in GRUB4DOS with "displaymem" command.
You can get address and length of GRUB4DOS RAM disk with "map --status" command (after map --mem) the number is in hexadecimal with 512-byte sectors unit.
I don't know how to get address of Gavotte's RAM disk. In UsePAE=1 mode, it probably starts at address 4G.

#165 i

i

    Silver Member

  • Advanced user
  • 539 posts
  •  
    United Nations

Posted 09 February 2010 - 07:19 PM

@Lama
I think you should try it without Gavotte's RAM disk.
If you really want to use Gavotte's RAM disk (UsePAE=1) with WinVBlock or FiraDisk your should make sure their RAM don't overlap.
You can enumerate available RAM region in GRUB4DOS with "displaymem" command.
You can get address and length of GRUB4DOS RAM disk with "map --status" command (after map --mem) the number is in hexadecimal with 512-byte sectors unit.
I don't know how to get address of Gavotte's RAM disk. In UsePAE=1 mode, it probably starts at address 4G.

OK Sha0 and Karyonix! I was able to successfully use both your drivers in my system but ONLY without PAE! I completely un-installed Gavotte RamDisk driver before doing test from scratch.

FiraDisk has perfect speed! while WinVBlock somehow ;) had read speed like HDD! (this could be because the image I tested was with NTFS compression, I will retest it later though)



If I add 4G line or --top parameter, I see 7B STOP (BSOD). My system has 8GB RAM, XP x86, FAT32 2.10GB Physical and 2.0GB NTFS UnCompressed. The entire image contents are CLONE of my physical FAT32 partition.
Free available RAM is 1.25GB as 2.0GB image is loaded before 4GB address. Any suggestions?
edit: I would like to add that when I used Gavotte's PAE=1, My RamDisk was 4768 MB. Apparently, it is UN-usable.


EDIT2: I'm using grub4dos-0.4.5a-2010-02-09.zip (chen) BTW Kayronix, I could only download grub4dos-0.4.4-pae1-2009-12-29.zip (your) as all other links are removed.

#166 karyonix

karyonix

    Frequent Member

  • Advanced user
  • 473 posts
  •  
    Thailand

Posted 09 February 2010 - 09:26 PM

@Lama
I remove my GRUB4DOS patches from this board because they are already integrated in recent chenall's release, so no need to keep it here. Just use (test) latest chenall's release.
Currently mapping large gzip images (uncompressed size >= 4GB) does not work. (I am not sure about smaller gzip images.) It will be fixed soon.

What CPU do you use ?
Does your Windows XP installation have PAE enabled ?
Test boot from either your source partition or from RAM drive (without --mem-min or --top) and look at first page of System Properties. If it does not have the phrase "Physical Address Extension", add /PAE option in boot.ini and try map --mem --top option again.

#167 i

i

    Silver Member

  • Advanced user
  • 539 posts
  •  
    United Nations

Posted 10 February 2010 - 05:26 AM

@Lama
I remove my GRUB4DOS patches from this board because they are already integrated in recent chenall's release, so no need to keep it here. Just use (test) latest chenall's release.
Currently mapping large gzip images (uncompressed size >= 4GB) does not work. (I am not sure about smaller gzip images.) It will be fixed soon.

What CPU do you use ?
Does your Windows XP installation have PAE enabled ?
Test boot from either your source partition or from RAM drive (without --mem-min or --top) and look at first page of System Properties. If it does not have the phrase "Physical Address Extension", add /PAE option in boot.ini and try map --mem --top option again.

CPU is P4 and PAE is always enabled (ever since my first day on this PC with XP preloaded :cheers: and I've been using PAE=1 with Gavotte). I've also added /PAE long back and I'm currently on RAM drive (without --mem-min or --top) because if put either of those lines, its BSOD STOP 7B. Something got to be wrong between Boot and OS area, I even tried safe mode, still same BSOD.

Boot --> Grub4DOS --> FiraDisk --> OS

#168 tinybit

tinybit

    Gold Member

  • Developer
  • 1173 posts
  •  
    China

Posted 12 February 2010 - 08:42 AM

Currently mapping large gzip images (uncompressed size >= 4GB) does not work. (I am not sure about smaller gzip images.) It will be fixed soon.


Chenall has fixed the gzip problem with his latest build.

There are still problems related to 4G+. See the following code in map_func():
if (!*(char *)((int)bytes_needed + ((filesystem_type == 3) ? 0x41 : 0x25)))

	*(char *)((int)bytes_needed + ((filesystem_type == 3) ? 0x40 : 0x24)) = from;



*(unsigned short *)((int)base + 0x1fe) = 0xAA55;

The "(int)" shows it will never work with 4G+, and even it will write to lower 4G memory area and corrupt data and code there. Dangerous!

Hope karyonix (or anyone else) would fix it.

#169 i

i

    Silver Member

  • Advanced user
  • 539 posts
  •  
    United Nations

Posted 12 February 2010 - 11:54 AM

@Tinybit

EDIT 2: OK, GZIP WORKS! BUT THERE'Z A PROBLEM!

.GZ file is smaller then IMG file, meaning it has to be loaded faster on RAM through extraction BUT
40 SEC with .IMG (2 GB)
1 Min 27 SEC with .GZ (649 MB)
This is like IMG file is being extracted to HDD and then loaded on RAM Otherwise, GZip extraction has TOO MUCH read overhead


#170 Shakral

Shakral

    Newbie

  • Members
  • 13 posts
  •  
    Germany

Posted 18 March 2010 - 06:13 PM

Attached is version 0.0.1.6. This version removes the need to prefix \??\ before the path for file-backed disks. Also, handles to those files are no longer leaked. Enjoy. - Sha0



have anyone else problems downloading this file? here appears some kind of "file not found" from the forum-software.

#171 i

i

    Silver Member

  • Advanced user
  • 539 posts
  •  
    United Nations

Posted 18 March 2010 - 11:40 PM

have anyone else problems downloading this file? here appears some kind of "file not found" from the forum-software.

:thumbup: it says file is moved or deleted

anyways there you go :)

#172 liuzhaoyzz

liuzhaoyzz

    Newbie

  • Members
  • 19 posts
  •  
    China

Posted 19 April 2010 - 11:33 PM

Shao:
Can winvblock use like this in grub4dos for pxe boot?
[codebox] menu.lst map --mem (pd)/winvblock.ima (fd0) map --mem (pd)/winpe.iso (0xff) map --hook chainloader (0xff) [/codebox] It will prompt wvblk32.sys could not be found.But Firadisk can use like this,and boot with grldr+firadisk will load external programs. As you said,winvblock support memdisk,can it use like this in pxelinux? [codebox] \pxelinux.cfg\default label winpe kernel memdisk raw floppy initrd=winblock.ima
kernel memdisk raw iso initrd=winpe.iso
[/codebox]

#173 Icecube

Icecube

    Gold Member

  • Team Reboot
  • 1063 posts
  •  
    Belgium

Posted 19 April 2010 - 11:51 PM

As you said,winvblock support memdisk,can it use like this in pxelinux?

\pxelinux.cfg\defaultlabel winpekernel memdisk raw floppy winblock.imakernel memdisk raw iso initrd=winpe.iso

You can't boot more than one instance of MEMDISK from PXELINUX (MEMDISK will directly boot that image).MEMDISK behaves like a linux kernel (booted by a bootloader that supports booting linux kernels). Therefor it can only load one initrd and thus boot only one image.Sha0 started to work on memdisk.c32 (a COM32 module for Syslinux). This module can read its own files and thus could support loading multiple images, just like grub4dos can do, in the future:
http://syslinux.zyto...rch/013850.html

#174 liuzhaoyzz

liuzhaoyzz

    Newbie

  • Members
  • 19 posts
  •  
    China

Posted 20 April 2010 - 01:34 AM

Thank you,icecube.
I want to know whether there is another way to use winvblock for memdisk and grub4dos,except copying wvblk32.sys into WinPE system32\drivers and modify txtsetup.sif.
[SCSI.Load]
wvblk32 = wvblk32.sys,4

#175 Sha0

Sha0

    WinVBlock Dev

  • Developer
  • 1682 posts
  • Location:reboot.pro Forums
  • Interests:Booting
  •  
    Canada

Posted 20 April 2010 - 02:38 AM

liuzhaoyzz: Yes, WinVBlock picks up multiply-established GRUB4DOS RAM disks. I do this as part of my testing. It does require WinVBlock to be properly "installed"/injected. Please remember that WinVBlock currently depends on NDIS.SYS. See below plans.

You asked about other ways to load WinVBlock. It would take some work to make the driver an NTBOOTDD.SYS-style driver; not sure I wish to go there. As a Windows driver, you've got to load it somewhere... Maybe from an F6 floppy disk during setup?

Icecube: Thanks for passing that info along. It's quite right that the current MEMDISK kernel will boot and thus not allow you to establish multiple RAM disks. H. Peter Anvin discussed the possibility of a multiboot-format MEMDISK which could use multiple images and provide each as a RAM disk. This will require work. The experimental memdisk.c32 might also do something useful if used multiple times.

WinVBlock plans:
  • Remove the dependency on NDIS.SYS by splitting AoE off into another driver which makes use of WinVBlock's bus, but otherwise operates independently. Then people interested in only RAM and file-backed disks needn't worry about NDIS.SYS.
  • Restore the 64-bit binary (dunno why I missed it in 0.0.1.6)
  • Automatic geometry detection when using 'winvblk attach'
  • Incorporate Bo Brantén's HTTPDisk as a similar driver to the planned AoE driver





1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users