Inside the Windows Vista Kernel, Part 2
BuR4N writes "Mark Russinovich takes a look at the Windows Kernel and the changes made in Vista. In this second part he describes the workings of the features SuperFetch, ReadyBoost, ReadyBoot, and ReadyDrive and how they improve system performance."
I am afraid I will be waiting until ReadyVista
Always back up, never back down. ---- Think you're cool 'cos your uid is prime? Take mine, modulo the one digit integers
Does it cover SuperExploit?
Why did they choose the 'Ready' prefix for everything? It seems that using 'Hyper' would have actually been a little more descriptive AND cooler sounding. I mean, HyperBoost, HyperBoot, and HyperDrive? Those sound so much better. And I thought these guys were supposedly big into marketing...
This guy's the limit!
What are the security implications of caching random disk data on a USB flash drive? If that drive is removed and plugged into another system, what data will be compromised?
From TFA: Flash memory, however, is generally cheaper and can service random reads up to 10 times faster than a typical hard disk. Windows Vista, therefore, includes a feature called ReadyBoost to take advantage of flash memory storage devices by creating an intermediate caching layer on them that logically sits between memory and disks. ... When you insert a flash device like a USB key into a system....
Seems a bit odd to have to insert a usb key to enable this feature. Are any manufactures putting flash memory on the motherboard to support this feature?
Has Microsoft started to use managed code within the kernel itself? It's understandable that some portions of the kernel could never be written using managed code, but some of the higher-level components could be. Now, it wouldn't be an easy task by any means, and it would likely result in further performance issues, but the security gains could be significant.
With all these performance-improving things, shouldn't performance actually, you know, be improved?
Many have fallen into the trap of building "intelligent" cache systems that perform worse than the "dumb" cache systems. Remember, every MB of RAM caching an app that you might use is not caching part of the photo that you are editing; caching is subtle work.
So, as I have not used Vista and have no plans to (I'm with Linux), a question: Can anybody tell me that they put Vista on their computer and things are now noticably faster? I've heard from people with the opposite experience, now I'm soliciting evidence that all these Ready* things actually help people.
Some friends were visiting last night and they had recently purchased a new HP laptop (1.6 GHz CPU and 1 GB RAM with 80 GB HDD). I was struck by how abysmally slow Vista was. The thing had Vista Home Premium on it. Putting a blank CD entailed a wait of anywhere from 15 to 25 seconds before the stupid dialog came up asking if I wanted to burn something to the blank disc. Connecting to a wireless network was a complete disaster. My wireless network is setup to not broadcast its SSID, so I had to enter the setting manually along with the WPA password. As soon as I was done, the thing would take the dialog away and then not connect. It took me 30 minutes of hunting to find the listing that had the wireless networks I had manually entered in (as opposed to the networks which were broadcasting). To top if off, the system kept prompting to allow things that it really seemed I should not need to be asked. I am seriously not trying to troll here, this is just
my first impression of vista.
This benchmark article shows that SuperFetch and ReadyBoost can help improve app launch times a bit, but mostly only if you have woefully tiny amounts of RAM in your computer.
However, this slew of benchmarks shows Vista to be slower across the board then XP.
ReadyFUD and ReadyChair.
Anyone remember smartdrv of yesteryear? How about fastopen? :-)
Tom
Someday, I'll have a real sig.
You are lost in a twisty maze of APIs, all alike. It is dark. You are likely to be hit on the head by a chair thrown by a Grue.
"None are more hopelessly enslaved than those who falsely believe they are free." -- Goethe
Because they swiped it from Commodore. Light Out, MS.
Poke 53280,0
Poke 53281,0
Ready.
My first Journal Entry ever, in 8 years! http://slashdot.org/journal/365947/aphelion-scifi-fantasy-horror-poetry-webzine
I always notice the greatest improvement in speed is when I reinstall XP, then about 9months later it slows down again. (no it's not spyware, filesystem frag etc..). This slowdown phenom. is well documented in windows cirlces.
Does Vista suffer from this same problem?
'sysinternals' - cos' he's the Man
... no one can hear you scream.
Software patents delenda est.
#include
int main() {
uac_alert("You are attempting to initialize variables. Cancel or allow?");
int i;
uac_alert("You are attempting to enter a loop. Cancel or allow?");
for (i = 0; i 100; i++) {
uac_alert("You are attempting to iterate a loop. Cancel or allow?");
i++;
}
uac_alert("You are attempting to exit program. Cancel or allow?");
return 0;
}
You are attempting to read sigs. Cancel or Allow?
But it *is* M$'s fault that they didn't take into considering the fact that most people don't have/don't want/don't care about owning a high performance PC. There is a huge demographic of users that use a PC as essentially a telephone. Do you honestly think that demographic should be forced to run out and spend 2000$ just to buy a system that is Vista "capable"? I don't think so.
~ So sayeth the wise Alaundo
Microsoft has bet that in the long run that their new memory optimization technologies will pay off with much improved performance and robustness. Seriously, that is exactly what's going on. The problem is all along XP is there staring at you with a whole slew of built-in app provider support and optimization. Vista can't help but be slower considering the change MS made under the hood. Btw I'm certainly not saying that MS's under the hood changes will be beneficial long term, look at Netburst. MS could dump or change whatever they want when Vista's replacement comes out in two years. You would hope that you could have it both ways ala how people claim OS X gets faster with each release, but with MS that just isn't going to happen. Thus early Vista adopters must suffer.
My advice to to either A)stay put on XP or B)make dam sure you app runs at an acceptable clip under Vista.
Hint - Sidebar and all those widgets while fun to look at waste cpu time, turn em off or use 3rd party alternatives.
If you wanna get rich, you know that payback is a bitch
Flash memory is generally rated for 100,000 write cycles. Cache is constantly getting swapped in and out. Did these geniuses optimize things so it only uses the flash sticks for stuff you access frequently and overwrites it less often or something? Flash memory is about the last thing you'd want to use for cache memory!
I don't like being cynical, but it seems like a shiny cool-sounding feature they wanted for marketing.
Those people who think they know everything are a great annoyance to those of us who do. (Isaac Asimov)
Is like inside that dark hole on dagobah.
"Prepare to make the jump to lightspeed. If Lando's people fixed the HyperDrive."
That's why Vista is so slow. They should have gone with Ludicrous Speed.
right, i'll believe that when winged primates fly out of my rectum... access time is one thing, but actual read/write speed is another.m l= 33&model1=676&model2=676&chart=34
http://www.moka5.com/reviews/2006/11/usbstick4.ht
(ignore the selected drives)
http://www23.tomshardware.com/storage.html?modelx
right, i'm going to kill a flashdrive just so my windows will run more swiftly.
(i know this is more of the same, but i can't resist) way to go microsoft; for your next trick, are you going to shoot your other foot?
Are people with older systems being forced to upgrade to Vista? I don't know if Microsoft has any sort of agreement with companies like Dell that would force them to put Vista on unsuitable systems....
Based on what people are saying, it really seems like the sweet spot for Vista is at least a dual core system with 1 gb of RAM and a good video card.
Instead of just assuming that the AES-128 is the golden key that locks cached data, please consider that their implementation may be lacking.
For example, where are they storing the encryption key? It's certainly on the PC somewhere accessible to all for now.
Security programming is hard, really hard. I don't doubt that Microsoft has very gifted security programmers, but I very much doubt that they were given free reign. Most likely they were forced to implement managerial compromises that, well, compromise the system security.
Also consider the CPU cycles required to do the encrypting/decrypting and that this is just one of MANY tasks the OS is doing with encryption-bound services. Those are just two factors that hardly constitutes speedy/secure anything.
http://www.maxineudall.com/2010/02/should-economists-be-sued-for-malpractice.html
And no one said "you must upgrade to Vista on your crappy machine" either. If you do so, it's your own fault that you don't own a system that is up to the challenge. Instead everyone wants to cry and bicker, because their stone age hardware won't run an operating system they never needed and they can't get the new eye candy.
Fact is, if you have any use for Vista whatsoever then you should be upgrading anyhow or purchasing a new system. For example, if your a gamer that wants to run the newest and greatest DX10 games, you don't pull out your 486 and bitch when it doesn't work. You obviously need a new system to do the newest and greatest things. It's a fact of life and not Microsoft's problem.
I don't think this demographic should be forced to run out and buy a new system. What, exactly, about the release of a new OS, and its inclusion on new OEM machines, leads you to believe people are being forced to do anything?
There's no way I am goign to be using those phrases/words in the presence of another techie.
It's far, far more likely that you are an unmitigated idiot.
The ONLY reason to encrypt the cache is because it's on a removeable drive. As long as the key is kept in memory, it's secure. And whether MS implemented AES on their own or purchased a 3rd-party implementation, there is only your bigotry to suggest that it would be any more flawed than anyone else's.
Pure FUD.
You have ZERO evidence that there is a security risk here, yet that didn't stop you from spreading fear, uncertainty, and doubt. Complain about *real* issues, not your delusional fantasies.
-- "I never gave these stories much credence." - HAL 9000
In reality it is a GIANT step backward, without even askin "Mother May I". Just bought an HP dv6205us (MEsta Home version) notebook 512M Core Duo. Added 2 (Two!) 1GB "fast" USB drives for caching (sorry, I wont promulgate their asinine market terms). This machine, with all these "advanced" assists takes far longer to boot and login than a slower single core AMD with XP pro without these crutches. /. it was proposed that one needs 4GB to hit the "sweet spot" the fsking hardware will only do 2GB!
It takes the UAC more than 10 seconds to flag an sudo escalation. Earlier on
Oh, let us not forget the lovely artificial constraints about joining a home network and the ability to establish a local policy. The primary purpose if this OS (and the company attempting to shove it down our collective throats) is about restricting what you can do with the hardware and software for which you paid money and try extort more from you for capabilities that should be there from the get-go. There is NO "genuine advantage" in using this steaming pile. Stay with XP if you must, better yet, re-install with the *nix distro of your choice. It is going to be YEARS before the current mess is patched to usability on a current average machine and you'll still be laboring under the yoke of what THEY decide you may or may not do.
There is no right to feel safe thru security vaudeville at the expense of everyone's freedom, privacy and tax money.
Is this Microsoft fanboy's version of making Safari more snappy?
I am TheRaven on Soylent News
well if you already have access to the PC.... you don't really need the encryption key anyway...
if on the other hand you find the USB flash drive laying on the ground.... cause someone dropped it... the key residing somewhere on the HD of the person that dropped the flash drive isn't really going to help you get at the information on it.
obviously the encryption/decryption is going to entail "some" overhead... if they had implemented it with out encryption it would doubtlessly be faster and of course terribly insecure..... but the benchmarks i've seen suggest that w/ readyboost load times improve (well on systems w/ 512MB,1GB, or 2GB...systems w/ 4+GBs dosn't do much for) vs not having ReadyBoost
actually I am happy to see you, however that is in fact a banana in my pocket.
Dell has a E521, AMD 3800 X2, 1 Gig Ram, 250 gig drive, Free Shipping & 19" LCD Monitor. Spend 45 bucks to get the 7900GS video card and "You are good to go"
2 grand my ass. Just where do you buy your pcs?
2gs was just an exaggeration. And I know M$ isn't literally forcing people to upgrade but they're going out of their way to make it nearly impossible for anyone not to. And that's what I meant. Sooner or later they're going to release a new version of MSN Messenger that requires Vista even though there could not possibly any technical reason it would need it. Just like what they're doing with dx10, if they wanted to make it compatible with XP they could have done so. Making dx10 Vista only was purely a marketing decision. If M$ wanted to truly upgrade windows, they would have taken the NT base code and made it more optimized, more compact, added some good features and took bugs out of it, added a flash GUI and then produce a descent workable Windows upgrade. You do not need a lot of horsepower to have good features, good performance and a flashy GUI. It's a shame they didn't do that.
~ So sayeth the wise Alaundo
Windows Vista uses the same boot-time prefetching as Windows XP did if the system has less than 512MB of memory, but if the system has 700MB or more of RAM, it uses an in-RAM cache to optimize the boot process.
Okay, so I just wanted to nitpick a sentence here. What happens between 512 and 700. I presume it does the same thing at XP would have. But this sentence is confusing, and perhaps implies that perhaps Ms. PacMan will get launched in this scenario.
Overall though, an interesting series. Kudos to the author.
I thought I would be interested in this article because I'm interested in the Linux kernel. But there's nothing particularly exciting about the Vista kernel, it seems. No interesting benchmarks, no off-color quotes by the developers, no wacky ideas about how to improve I/O performance. Reading about the Linux kernel on LWN or Kerneltrap is a lot more fun!
Well... this is yet another review of features I don't like in a product I don't want from a company I don't trust. *Yawn*
My bicyles
dude you are a troll
'there is only your bigotry to suggest that it would be any more flawed than anyone else's.'
I am not saying there is any security flaw in this issue. But bigotry doesn't really fit when someone bases their performance expectations on a proven performance track record. Microsoft has a well earned reputation for faulty security and poor implementation that is backed by a solid (or unsolid as the case may be) track record that dates back as far as the company and those problems have gotten worse over time. There may be lower profile companies with worse records but there aren't really any high profile companies with such a poor track record that I am aware of. Hence, the actual odds of coming up with a solution that is not flawed from a random respected high profile development team are far lower than from Microsoft. Unfortunately a solid, secure, and fast implementation from Microsoft would be the exception rather than the rule.
You may like Microsoft programs. You may believe they make great stuff that is easy to implement. But that doesn't change the fact that a betting man would choose another vendor when looking for a solution that requires fast performance, interoperability, stability, security, or any sort of critical data handling. If a betting man is choosing Microsoft solutions then these are secondary requirements for him (he may have decided that Microsoft solutions meet the 'good enough' benchmark in these areas) and some other primary concern such as ease of implmentation or conformity (so that one might interoperate with others who also conform) is the most important criteria.
All of the harsh replies appear to have firm belief in something for which there is no proof.
Namely, that Microsoft implements security perfectly. This conveniently ignores their consistent and very public record of high-profile failures on security matters.
[shrugs]
http://www.maxineudall.com/2010/02/should-economists-be-sued-for-malpractice.html
Notice all the blab about these new features, but a notable lack of bottom-line-- i.e. how much faster is bootup, shutdown, and file i/o. Funny, you'd think if the numbers were good, they'd crow about them? Hmmm....
Also note that with the boot information in a database instead of a text file, it's no longer possible to fix partition or booting problems with a text editor.
I was afraid to read the article because I may one day be a FOSS developer and I didn't want to "contaminate" myself.
I believe posting a comment should be perfectly safe, since this is Slashdot and nobody RTFA anyway.
I only look human.
My mother is a halfling and my dad is an ogre, so that makes me an Ogreling
Have you tried Vista? Or did you just read other peoples post and decided your Mac/*nix was obviously superioir and Vista was useless. I've run Vista RC1/Beta 2 on my Medion laptop (Model MIM2220 Notebook PC), the cheapest laptop I could buy last August, Sure I added 1gb of ram for £40 to it but its the same £399 laptop I bought last year. I could find two cheaper laptops at the time which were the same spec but lacked wireless. SO in short one of the cheapest laptops, most low end you could buy can run vista quite happily (minus Aero). My sister bought the laptop which replaced mine ( http://www.woolworths.co.uk/ww_p2/product/index.jh tml?pid=50822571 )in December she got her copy of Home basic and it runs fine.
Yes my laptop did run explorer slow and setting it up on the uni vpn was a pain (now rectified Uni has made an installer and guide.) But everything else ran just as fast, my sister's runs fine without any slow downs. Oh and yes I did upgrade my laptops ram from 256mb to 1gb so it wasn't exactly one of the cheapest off the shelves but then again it didn't even run XP MCE 2005 properly with 256mb of ram.
I'm sick and tired of this FUD Vista does not require the ultimate specs to run, a £49.95 (Abit NF 95 Maplins Electronics) motherboard with an onboard graphics card can run Aero. Vista is a resource hog compared to XP and the Nvidia drivers and ATi drivers are still not that well written so there are preformance drops. It wants more, deal with it either the features make the extra resource requirements worth it, or they don't.
It works pretty much like the Linux caching system has done since V2.0 or so. Pick up any book on Linux kernel internals and just skip over the newer stuff.
Engineering is the art of compromise.
If they pick the best names the first time around, they won't have any room to innovate new fancy names for these technologies in the next Windows.
Really the title of this article should be "Microsoft Implements Fresh New Names for Existing and Obvious Technology in Vista Kernel."
And the AES key is stored on the USB drive in plain text! Doh!
Nihilism means nothing to the dancing peasants
After several weeks using Vista, I'm back to XP, not only for the usual reasons (Apps that don't work, nVidia drivers that blue screen), but because Vista is a *pig*!
When I went from Windows 2000 to XP, I was startled at how much of a pig XP was. In short, it seemed bigger and slower, even on adequate hardware. As proof of this, note that one expert recently commented that the "sweet spot" on XP is 2 GB of RAM. Now, compare that with Vista, where the same author claims the "sweet spot" to be 4 GB.
Oink, Oink!
From the description of all this ReadyCrap (TM) in Vista, it appears that the entire OS has been designed for hardware that would make a professional gamer blush. Oh, I understand that it doesn't *require* 4GB of memory, but this is definitely the Cray Supercomputer version of Windows.
And beyond memory usage, don't get me started on how many CPU cycles this pound of bacon consumes at idle. No wonder they want you to use a Mega-Multi-Core Processor.
Oink!
"My country, right or wrong; if right, to be kept right; and if wrong, to be set right." --Senator Carl Schurz (1872)
0) You buy a computer with a real operating system (OS X, Linux, Darwin, BSD, or maybe even a gaming console BIOS with a Web browser like Opera?)
1) You see if you can live without Windows (Vista, XP, 98, what have you)
2) If you can't, you buy a PC (or equivalent, e.g. qemu)
3) If you don't have Windows, you buy it or its equivalent, if it works for the task (Codeweavers/Wine)
4) Then you run the well-designed software on the real HW/OS/SW combo, and use Windows for the junkware, spyware, proprietary junk, games, etc.
5) ????
6) Short sell MSFT stock
7) Profit!!!!!
P.S. Bad Vista. No good. MSFT can't seem to get their act together.
Or for those of you who like hot coco...
POKE 65495,0
Or,
;)
SYS 64738
Instant Vista Experience
For Aiur!!!
indicate what is REALLY running inside of Windows. Click Here
load "$",8,1
BestBuy's GeekSquad is outsourcing all it's "In-Store" repairs to India. They have been quietly laying off hundreds if not thousands of employees.
a spx and if you look at the names of people servicing the computers you can tell who is in the US tech center and who is in the India location by the name designation. US names are spelled out in full, while the India locations are lower case and separated by a period. GeekSquad provides a chat tool to communicate with the overseas technicians and they are however free to admit to where they are located which is why it is interesting that BestBuy still lies to it's employees about the whole thing.
:) This is about BestBuy lying to customers. Customers pay a lot of money to have a person in the store working on their PC.
The are using "Agent Jonny Utah" which is basically a KVM switch and some software like PC-Anywhere that allows technicians from remote locations to work on customer's PC's.
Customer's do not know then are providing their private information over the internet to people in other countries. BestBuy has been saying their "Technicians" were in the US.
Recently the GeekSquad technicians were given a link to check on the status of machines hooked to Jonny Utah http://www.dudev1.com/StoreViewExample/StoreView.
This is not about being against people of another country or anything like that. The people of this particular India tech center are probably nicer and more deserving of a job then most of the GeekSquad by far anyway
...Microsoft copied X, Y & Z from (Apple, IBM, BSD, *nix, etc.) can be posted here.
Yup, cause the linux just does a better job.
I think I'll randomly pick a distro and list some security advisories.
http://www.debian.org/security/2006/
Oh, look, there's lots there.
The issue that they are addressing by encrypting the REMOVABLE device used for CACHING is that the concern that someone could REMOVE the device and access the CACHED data. If the decryption key is stored on the PC, then they've still addressed the issue of the device being REMOVED FROM THE PC.
Dont forget findfast. #1 disabled app of all time!
I'll just use my special getting high powers one more time...
http://www.intel.com/technology/magazine/computing /robson-1206.htm
From TFA:
Windows and the applications that run on it have bumped their heads on the address space limits of 32-bit processors. The Windows kernel is constrained by default to 2GB
In English, this means two things:
1) Our developers haven't figured out how to deal with negative signed integers in a 32-bit address space, so we leave it to third-party developers to figure that one out
2) The Vista kernel alone requires more RAM than all the disk space used by Windows 98 and all its accessories combined
SO in short one of the cheapest laptops, most low end you could buy can run vista quite happily (minus Aero)
Why would you want to run Vista without Aero? What would be the point?
Minor nitpick about the almost-thumbnails in TFA, especially the ones on the yellowish background:
the thumbnails are *larger* in size (as in bytes) than the full pics. By as much as 60% for the first pic.
Microsoft just can't turn a trick these days.
46137
Oh I wouldn't worry too much. Knowing Microsoft I'm sure they did something like cache the key on the thumbdrive to help speed decryption up.
superfetch, readyboost, readyboot, readydrive...
It seems that these guys at M$ haven't discovered [space bar] key yet.
Here's the point
http://www.dell.com/content/topics/global.aspx/sol utions/en/winvista?c=us&cs=&l=en&s=dhs
Heck, even Dell says 512MB is enough for a Vista "Capable" system!
Umm... just ignore that "Great for..." bit in the table. It's still *capable* damnit!
I dunno. I assumed it was encrypted with a session key such that the cache could not be read by another computer, or even the computer it was written from after a reboot. Granted the key generation is a target for cracking, but I doubt you can find a universal key squirreled away on the Vista install CD.
Post may contain irony: discontinue use if experiencing mood swings, nausea or elevated blood pressure.
To keep power usage down, laptops tend to have slower hard drives. The one I use is fine so long as I'm working completely in RAM, but the moment something hits the disk there is a significant slowdown. This is particularly an issue because virtual memory resides on disk, and Windows swaps even with plenty of free RAM available, not to mention application-specific caching (Adobe Acrobat seems one of the worst offenders). The upshot is that my laptop is orders of magnitude slower than my full-sized PC for many common tasks even though the laptop has twice the RAM (2GB vs. 1GB).
Well... they are not forced now... but the time will come when XP will no longer be supported. But there will still be security flaws that are discovered. Nobody was 'forced' to install SP1, but you probably should because MS doesn't support and security updates are no longer released.
We're somehow stuck in the idea that because computers keep getting better we need to upgrade. Computer improvements have been a great thing to get us where we are. Should we still innovate? Absolutely. But I fail to see why business users who use an Office program, a web browser and an email client need anything close to the latest and greatest of today. I'm running Linux on a P 1.7M notebook w/512 MB of RAM and it runs everything pretty smoothly. I was running XP until recently, and it even didn't really run that much slower. People writing letters should be limited by the speed at which they can type rather than speed of other needless things at this point. We get so focused on new that we don't spend any time on better.
When voice recognition improves to the point that people no longer need to type, or there is some really novel feature added to an Office app that improves productivity and needs the extra juice, then businesses ought to upgrade. There is a sense in which there is a 'forced' upgrade to Vista because new machines only ship with Vista, and the more that IT departments have to support, the more expensive.
or SYS 800 ;)
---
CAPTCHA of the comment: paralyze
I agree with you...and who is saying that businesses that only use an Office program, a web browser, and an email client have to get the latest and greatest? As a point of perspective, Win2K is still very much supported (my own business is still running this OS on a good many machines). If OS's have a support shelf life of 10 years or so, I'd say that upgrading to Vista isn't being imposed on anyone.
Are they still releasing security patches for W2K?
SYS64738
Obviously this "Debian GNU/Linux" page is some Microsoft product, as we all know that Linux cannot possibly contain security flaws.
The clash of honour calls, to stand when others fall.
Keeping user files on a separate partition of their own helps if you ever need to install a new os. That way you don't have move user files to a safe place. You can even map user directories like "My Documents" to the user partition's directories so you'll get nice defaults for file save locations.
Sure are: http://www.microsoft.com/windows2000/default.mspx