VirtualDrive?

Shahal

Member
Can anyone elaborate on what this is and if it could cause problems with the programs Vista decides to use it with? Is it ok to turn off if it does cause problems?

From what I gathered Vista decides for me that certain config files for certain programs get put into an area that is User Account specific rather than put it in the actual program folder. Which to me would be all well and good if it were to put these files in to a folder that wasn't hidden or hard to find like the My Documents folder like some programs/games do. Another thing that bugs me is that it doesn't tell you when it does this and does not allow any user input on this. I've also noticed that the programs that are put into this "VirtualDrive" crash or have other issues that I don't remember having before.

I don't really find this function of Vista to be at all necessary to me because I'm the only one that uses this computer and I don't need things to be account specific. It's incredibly inconvenient when you go to look for a file that you're used to be in a certain place and its just not there. It took me forever to figure where the files actually were.
 

My Computer

System One

  • Manufacturer/Model
    Solaris Tech
    CPU
    Intel C2D E8400
    Motherboard
    EVGA 750i SLI FTW
    Memory
    4 Gb OCZ Platinum
    Graphics Card(s)
    2x XFX nVidia 9800 GT
    Sound Card
    On Board
    Monitor(s) Displays
    Acer AL1916W 19" LCD
    Screen Resolution
    1440x900
    Hard Drives
    Western Digital 320 GB
    Seagate Barracuda 250 GB
    PSU
    Ultra X2 750W
    Case
    Ultra Aluminus Black
    Cooling
    Stock CPU, 2 Antec 120 MM Case Fans
    Keyboard
    Gateway Media Keyboard
    Mouse
    Razor DeathAdder
    Internet Speed
    Comcast Cable 8 MEG, Belkin N Wireless USB Adapter
    Other Info
    My Laptop: Acer Aspire 4730Z - Vista Home Premiun x86 - Intel DC T3200 - 2 GB RAM - Intel Graphics Accelerator 4500M

    2nd Desktop: WinXP Pro - AMD Athlon XP 2800+ - 2.5 GB RAM - ATI Radeon 9250 PRO
I think you might be talking about the excitingly named "file and registry virtualisation" mechanism.

In a nutshell, "virt" allows apps with dodgy security to continue to work instead of falling foul of Vista's tighter security standards. It might be easiest to illustrate by example...

- BadApp.exe has been coded by its developer to save its files in some critically important folder - say "\program files" perhaps.

- When you run BadApp.exe under XP or Win2k, it WILL manage to make changes in that folder, and that might end up affecting the stability of other apps or even the system itself.

- Under Vista with virt enabled, the OS catches the attempt to write to the sensitive location and goes... "oh, you're BadApp and you'd like to write to \Program Files? Suuuure". To the app it looks like the write succeeded, and that's a good thing because you presumably want the app to work and it would probably have crashed otherwise because it can't handle outright rejection. But the write went to a "virtualised" location instead, and the OS keeps track of which apps had their writes virtualised, so that it can pretend the next time the app queries the contents of "\Program Files".

- Same thing with the registry. There are security and stability-sensitive areas in the registry where apps SHOULD NOT be attempting to write, and yet many of them do because of dubious development security standards. Instead of failing, BadApp's registry write is virtualised and the OS will present it with an alternative view of reality the next time it queries the contents of the key it just wrote to.

It only tends to cause real problems with other exotic mechanisms thrown into the mix - EFS encryption for example. Under some circumstances that can make virt fail. A less serious "cosmetic" effect is the confused user. If you've just saved a file to a system folder through BadApp, and you then attempt to view the same file in the same location using a different process, say Explorer.exe, you won't see what you expect - the file ain't there except when BadApp asks.

If you want to see which processes are being virt-ed, go into Task Manager, processes tab, View, Select Columns..., tick "Virtualization". The process list will then have a new column with a virt status for each individual process.

If you want all of that in formal-talk:

Common file and registry virtualization issues in Windows Vista
 

My Computer

What do you mean by "Bad Apps"? In my case it put files in to this virtualdrive from programs I've been using for awhile like a couple of games of mine, Yahoo Messenger, the drivers for my mouse and things like that. I don't see any of the programs that it designates for this virtualization to be anything that would harm my computer.
 

My Computer

System One

  • Manufacturer/Model
    Solaris Tech
    CPU
    Intel C2D E8400
    Motherboard
    EVGA 750i SLI FTW
    Memory
    4 Gb OCZ Platinum
    Graphics Card(s)
    2x XFX nVidia 9800 GT
    Sound Card
    On Board
    Monitor(s) Displays
    Acer AL1916W 19" LCD
    Screen Resolution
    1440x900
    Hard Drives
    Western Digital 320 GB
    Seagate Barracuda 250 GB
    PSU
    Ultra X2 750W
    Case
    Ultra Aluminus Black
    Cooling
    Stock CPU, 2 Antec 120 MM Case Fans
    Keyboard
    Gateway Media Keyboard
    Mouse
    Razor DeathAdder
    Internet Speed
    Comcast Cable 8 MEG, Belkin N Wireless USB Adapter
    Other Info
    My Laptop: Acer Aspire 4730Z - Vista Home Premiun x86 - Intel DC T3200 - 2 GB RAM - Intel Graphics Accelerator 4500M

    2nd Desktop: WinXP Pro - AMD Athlon XP 2800+ - 2.5 GB RAM - ATI Radeon 9250 PRO
I just needed a process name, so I chose BadApp.exe. Perhaps that's too "loaded".

The point is that there are places in the disk and in the registry where apps should not attempt to make changes (write), because doing so could corrupt crucial files and settings. That seems perfectly intuitive, and yet many developers have for years been doing such things, either out of sheer laziness or because they genuinely didn't know they shouldn't.

If the OS were to catch and prevent those writes, most apps would simply crash. That's where virt comes in. It allows the app to continue running and to believe that its write to a sensitive location has in fact succeeded.
 

My Computer

I understand the benefit of not writing configuration files in the Program Files folder but like I said I wish it would write these file to a more accessible location or give me the option to write it where I would want it. For example, with the game Unreal Tournament 3, instead of writing the config files in the program directory it writes the files to my documents, where I can easily manipulate my player and map data for the game as I need to. The files that it's writing in the VirtualStore folder are files that I actually need to use quite often for some of the programs and its hard to work with if its in a hidden folder. Yeah I could go through the trouble of making the folder unhidden. I just don't think I should have to do that.
 

My Computer

System One

  • Manufacturer/Model
    Solaris Tech
    CPU
    Intel C2D E8400
    Motherboard
    EVGA 750i SLI FTW
    Memory
    4 Gb OCZ Platinum
    Graphics Card(s)
    2x XFX nVidia 9800 GT
    Sound Card
    On Board
    Monitor(s) Displays
    Acer AL1916W 19" LCD
    Screen Resolution
    1440x900
    Hard Drives
    Western Digital 320 GB
    Seagate Barracuda 250 GB
    PSU
    Ultra X2 750W
    Case
    Ultra Aluminus Black
    Cooling
    Stock CPU, 2 Antec 120 MM Case Fans
    Keyboard
    Gateway Media Keyboard
    Mouse
    Razor DeathAdder
    Internet Speed
    Comcast Cable 8 MEG, Belkin N Wireless USB Adapter
    Other Info
    My Laptop: Acer Aspire 4730Z - Vista Home Premiun x86 - Intel DC T3200 - 2 GB RAM - Intel Graphics Accelerator 4500M

    2nd Desktop: WinXP Pro - AMD Athlon XP 2800+ - 2.5 GB RAM - ATI Radeon 9250 PRO
Actually, it's not Vista that decides where a program's config files are put, it's the program installer, an by default, the programmer themselves. Many programs have used hidden or really deep hard to find locations for their config files for years now and with Vista they've used the hidden AppData/Roaming folder for this. MS of course controls what folder is used for program config files locations but the programmer decides just what files they want included in that location and not Vista.

Many programs will now have an option in the installer to change the location of these files if the user wishes, but many times users simply don't pay attention enough during that process to see it and just click thru all the "Next" buttons until the installer is finished.
Basically, the programmer puts files in the hidden area because they don't want the less experienced users mucking around with them, and they know the more experienced onces will know where to find them if they need them.

You can change that location if you want also, just move the folder and the program pointers should update accordingly. Also, just watch the installation next time and see if the option to change the config file/folder location is available. Contacting the program developers thru their site and requesting that option if it's not in the installer already, may just get them to put it in next time..maybe.
 

My Computer

System One

  • Manufacturer/Model
    Personal Build
    CPU
    Intel E6750 Core 2 Duo
    Motherboard
    Asus Commando MoBo (P965/ICH8R)
    Memory
    4G's Crucial Ballistix Tracer DDR2 PC26400 RAM
    Graphics Card(s)
    BFG 8800GTS OC2 320MB
    Sound Card
    Creative Sound Blaster X-FI Platinum FATAL1TY (next)
    Monitor(s) Displays
    2 x 22" w2207 LCD Monitors
    Screen Resolution
    1- 1680 x 1050, 1 - 1920 x 1080
    Hard Drives
    3 x 500G SATA II WD Caviar HDD's
    PSU
    EnerMax NoiseTaker II 600W
    Case
    NZXT Lexa Classic (modified, dual doored & windowed)
    Cooling
    Zalman 9700 CPU cooler, 4-120mm fans, 1-90mm
    Mouse
    Logitech Optical Trackman trackball
    Other Info
    NZXT Lexa Classic Case, Zalman 9700 CPU Cooler, 2 DVD Burners c/w LightScribe (Sony, TSST), Enermax NoiseTaker II 600W PSU with Custom Chrome cable sleeving, Hauppauge HDTV TV Tuner Card, 5.1 Logitech Z5500 speakers, 15 in 1 Multi-card reader
Back
Top