Slashdot Mirror


Going Deep Inside Vista's Kernel Architecture

bariswheel wrote to mention an episode of 'Going Deep' on Channel 9 which takes a hard look at the architecture of Windows Vista. From the post: "Rob Short is the corporate vice president in charge of the team that architects the foundation of Windows Vista. This is a fascinating conversation with the kernel architecture team. It's our Christmas present to all of the Niners out there who've stuck with us day after day. This is a very candid interview." Topics discussed include the history of the Windows Registry, and the security/reliability of Microsoft's upcoming operating system.

48 of 478 comments (clear)

  1. I love the questions they ask. by IntelliAdmin · · Score: 5, Funny

    My favorite is: "do you ever wish the registry had never been developed?"

    1. Re:I love the questions they ask. by Jugalator · · Score: 5, Informative

      I personally think the Windows Registry is the software implementation of the saying "putting all eggs in one basket".

      But of course, backups are automatically made on successful bootups to minimize the damage done if you'd suffer from a file corruption in that specific file. But I've never figured out when it does that. It clearly doesn't seem like on every successful boot, as I've seen messages like "Windows has restored a registry backup" and after that wondered where all settings the past few months went, and why some programs don't even run anymore. Gah... Thankfully last time it happened were a number of years ago. *knocks wood*

      Interestingly, Microsoft has started opting more for .config XML files stored in the application directory (sort of like their old .ini files) in their new wave of .NET applications, and that seems to be more like the recommended way of storing application settings. I don't know how user-specific settings are dealt with if doing it that way though, and if it's only suitable for settings for the local machine.

      --
      Beware: In C++, your friends can see your privates!
    2. Re:I love the questions they ask. by Ignominious+Cow+Herd · · Score: 3, Informative

      See:
              C:\Documents and Settings\\Application Data\
              (can be sync'ed with a domain server)
      and
              C:\Documents and Settings\\Local Settings\Application Data\
              (remains on this machine only)

      --
      Lump lingered last in line for brains, and the ones she got were sorta rotten and insane.
    3. Re:I love the questions they ask. by ivoras · · Score: 3, Insightful
      I'm sure that, if Microsoft did something like that (turn Registry into bunch of XML files), there would be an army of Slashdot-reading nerds going "Wow, M$ is stooopid - and what about memory consumption and speed of processing of all that XML files?!", "And just how is M$ going to ensure data reliability / transaction safety with textual XML data?!" and others.

      The Windows Registry in Windows NT systems is a database-like construct, with sort-of transactions. They even have access control lists to manage security - keys can be made writeable only by some users, etc. Some registry files ("hives") contain security information and are not readable by normal filesystem utilities (access-denied on open(); though this is not registry-specific :) ).

      Think of it like using mysql or sqlite database to store and manage system configuration instead of bunch of config files - it's NOT a bad idea.

      (I'm not attacking the config-file approach, just saying that having a convenient standardised interface to config data across all applications is a Good Thing).

      --
      -- Sig down
    4. Re:I love the questions they ask. by smittyoneeach · · Score: 4, Interesting

      So why not do something intelligent and implement it as a SQLite database?
      What's less than half a meg of C that already works on Windows between friends? It's not like the existing registry files are exactly svelte.
      Ah, yes: good ideas can be discerned by the Redmond refusal to implement them.

      --
      Get thee glass eyes, and, like a scurvy politician, seem to see things thou dost not.--King Lear
    5. Re:I love the questions they ask. by Osty · · Score: 3, Insightful

      So why not do something intelligent and implement it as a SQLite database?

      Feel free to travel back in time and suggest they do that. The registry has been around for over a decade. SQLite has not. The registry works (yes, maybe it can get corrupted, but I haven't had that happen in years), and there's other stuff Microsoft can and should focus on besides re-writing the registry.

    6. Re:I love the questions they ask. by klui · · Score: 3, Interesting

      Unfortunately, you cannot manipulate the data using standard Windows tools as though it were written as a set of files under NTFS. For instance, it would be really nice if I could search for all registry entries that was created/modified since I installed program X. The metadata exists, but is not exposed by regedit. And if something corrupts an entry in the file system, I think the chance of the entire hive becoming inaccessible is less than if the registry is in 1 file. Maybe I trust NTFS more than the registry "file system." Or are they done using same underlying calls?

    7. Re:I love the questions they ask. by timeOday · · Score: 4, Insightful
      See if you find these interesting: http://www.namesys.com/whitepaper.html http://namesys.com/

      In short, I'm convinced the registry doesn't require a separate implementation from the filesystem.

      Designers (including Mozilla's) are entrenched in the idea that lots of tiny files are bad. Traditional filesystems and even api's to some extent aren't optimized for that. But Microsoft was in a different position, because the designers of the registry were in cahoots with the filesystem people (same company). Instead of inventing the registry, they should have optimized NTFS for config info.

    8. Re:I love the questions they ask. by Sarisar · · Score: 3, Interesting

      Where I used to work we didn't do anything in the registry if we could help it - we ended up writing a few standard libraries to do similar things. If it's program related data, dump it on the H drive (read only) with the program files, if it's user data, dump it on their Y drive. Roaming profiles works fine with that and it doesn't require any stupid registry stuff that ends up getting copied up and down the whole damn system. Like the time someone was running a newer version of notes, which overwrote the old notes data which when a new person logged into the machine they inherited and within a few days no-one could check their mail. Good thing this was only in the test environment. Or the time I found out why it took me 20 minutes to log on every single damn day because it was copying my ENTIRE REGISTRY FILE DOWN plus all my 'personal files' and some program had filled it with crap, which I have a feeling was MSDN doing a full install in 'my docs'. Removed that stuff and it logged on in seconds afterwards :)

      But I digress. I hate the registry, it's a terrible idea if you need to copy a system out to reinstall XP or something, then you have to reinstall every single damn program back in. But if the registry didn't exist everyone could simply have two HDs, one for windows and one for all their applications and it wouldn't care about it if you reinstalled. This would also mean if (or rather, when) your machine gets screwed up (viruses / trojans / other hacks / simply dies because it's got too much shit on it in the registry) you can reinstall and have everything still the way you want. Window size, everything like that could be ini files and not registry and wouldn't be wiped.

      Going back to this company, if we had the ini file wrong we simply updated it and next time people ran, easy. Or if it was on their Y drive we ammended the batch file that ran almost every program (which while sounding stupid was very usefull) to delete or fix the problem then run the program. All remotely done, no need to get every user to run stuff on startup to fix registry issues, then find out one guy didn't do it and everyone else that logged in gained all the settings (as mentioned above).

      Is www.bantheregistry.org available? I think I might want to start my own charity :P

    9. Re:I love the questions they ask. by Anonymous Coward · · Score: 4, Insightful

      You bring up an excellent point. Reiserfs will likely not be popular for at least a decade because apps must be written to support it. Since most people don't have reiserfs, any app that requires it will be quite unpopular. Windows has the same problem with NTFS. Since Windows cannot rely on having an NTFS filesystem available, having it store the configuration data would not help very much. Not only does NT (all current Windows versions are based on NT) have to be able to boot from FAT[32], but the APIs still have to work on Win9x. What they would end up with is just some config-optimized FS layer on top of the filesystem. Come to think of it, they could call it a "registry"...

      Remember, FAT (like most old Unix filesystems) could not have more than 64k files (each taking up at minimum one sector) and directories are not stored in sorted order on disk. This means that putting every key in a different file would start to limit the number of other files you could put on the filesystem and cause config file access to be slow because you would end up with lots of files in large directories.

      When the system boots it creates a copy of the systems configuration data (LastKnownGood), which is relatively easy because it involves just copying a segment of a file. If the data were stored in a hundred or more tiny files, making this copy would have a huge performance impact on boot-up.

      The Unix answer to this question is to either hard code the information right into the executable (most binary installations must go in specific directories) or write out a file in some proprietary format, and that doesn't solve the problem that the registry was initially designed for -- to manage all of the components of a distributed object system (OLE) where none of the components needs to know where any other component is installed or what it can do.

      Quite honestly, I think the registry is a good solution to the problem of where to store lots of configuration data. Unfortunately its growth has not been managed, and is now a mess. Still, doing a search in regedit for some configuration is much easier than trying to grep the filesystem for something.

      dom

  2. How deep did they go? by Spazntwich · · Score: 3, Funny

    Because I'm only interested if it was BALLS DEEP.

  3. Normally I'm a fan of the Deep Inside Series. by Anonymous Coward · · Score: 5, Funny

    But that was the worst porn video I've ever seen. There wasn't even any nudity, but considering how these people looked (think your local linux user group visits The Gap), that was probably for the best. My rating? Totally Limp.

  4. Please, kill the registry... by Anonymous Coward · · Score: 3, Insightful

    ...good old ini files are much more easy to use (i.e. copy around, fiddle and the like)

    1. Re:Please, kill the registry... by dc29A · · Score: 5, Insightful

      ...good old ini files are much more easy to use (i.e. copy around, fiddle and the like)

      That will also make applications easier to port. Something Microsoft doesn't want. Registry is a good lock-in tool for Microsoft.

    2. Re:Please, kill the registry... by displaced80 · · Score: 4, Interesting

      (I'm a .NET developer .... hey, don't shoot me!)

      I'm a huge fan of .conf files (or, on my home platform of choice -- OS X -- .plist) files. Although I appreciate .conf files' readability, sometimes I want to store prefs which are a little more complex. My preferred method is to create 'Prefs' classes in my apps. Depending on requirements, I'll make a UserPrefs class and optionally a SystemPrefs class (for prefs that apply to all users). These are just a bunch of properties to hold each setting. It's nice from a coding point of view because you can put sensible defaults into the prefs class(es)' constructor in case the prefs haven't been saved previously. I then just serialise and de-serialise these classes into and out of an XML file. These get saved into appropriate filesystem locations.

      The resultant XML isn't as tidy as that which OS X's Cocoa frameworks produce, but it's still a gazillion times more manageable and flexible than registry entries. I'd like to put together a generic viewer/editor for these xml files (much like OS X's 'Property List Editor'), although they're still plain-text tweakable if you're paying attention.

      The registry is an idea whose time has passed. I'd like to see a future MS operating system implement a standardised xml file layout for everything the registry holds, using as many individual files as are appropriate. Turn the legacy Registry API calls into wrappers for the file-based system.

      That'd make things neater, if done right! :)

      --
      What's the frequency, Kenneth?
    3. Re:Please, kill the registry... by Jugalator · · Score: 5, Informative

      Hmm... Well, assuming you have the source and are ready to start porting code, it's just about changing the behavior of a number of well documented API calls. You can make a library out of it with your own preferred behavior to make the code reusable. Actually, I'd be surprised if someone hadn't already done so and posted it somewhere on the web.

      It's hardly a lock-in method when it's both documented methods and it's easy to find out what happens -- the Windows registry is hardly rocket science, but more like a tree of settings that can have a few different data types.

      --
      Beware: In C++, your friends can see your privates!
  5. Re:Is that a word? by Anonymous Coward · · Score: 3, Funny

    There is no word in the English language that can't be verbed.

  6. Fix whats there! by a_greer2005 · · Score: 4, Interesting
    Not flame, genuine curiosity from a 20 year old IT major

    OK, am I the only one who has grown weary of the "oh well, another month, another insain exploit" state of mind in which windows users and admins seem to be willing to accept? Why do people just accept this, I understand a few bugs, and maybe a SINGLE large scale outbreak in something as commonplace as Windows, but this crap is just outright crazy now-a-days.

    Businesses would never accept this kind of qualty from, for example, partners, suppliers, and so on, so why do they "just take" this seeminly QC-lacking products from redmond with glee?

    1. Re:Fix whats there! by a_greer2005 · · Score: 3, Insightful
      Hate to reply to self but: heres the rest of my thought that I forgot:

      If you already paid for WinXP, why the hell should you have to pay AGAIN for the "security" that was supposed to be there...and in 2k, NT4, yadda yadda yadda?

    2. Re:Fix whats there! by jjohnson · · Score: 4, Insightful

      Businesses would never accept this kind of qualty from, for example, partners, suppliers, and so on...

      Businesses in all markets accept this kind of quality from their suppliers and partners all the time. They don't like it, they scream about it, they change relationships because of it, but don't think that problems of the same scale don't constantly occur in businesses generally. I say this as someone who spent five years in plastic housewares manufacturing. Technology is not unique at all in this respect.

      --
      Anyone who loves or hates any language, platform, or manufacturer, doesn't know what they're talking about.
    3. Re:Fix whats there! by deaddrunk · · Score: 3, Funny

      Either that or you have no idea what a WMF is

      It stands for weapon of mass fubaring.

      --
      Does a Christian soccer team even need a goalkeeper?
    4. Re:Fix whats there! by ThaFooz · · Score: 5, Interesting

      Fix whats there!

      A long term plan for fixing the underlying architecture problems is as important as maintaining the current release... otherwise you're just turd polishing (which is more expensive to Redmond & the end users in the long run). System Architects and QA are almost apples and oranges too.

      Not flame, genuine curiosity from a 20 year old IT major. Why do people just accept this... Businesses would never accept this kind of qualty from, for example, partners, suppliers, and so on, so why do they "just take" this seeminly QC-lacking products from redmond with glee?

      I really don't think there are that many people drinking the MS kool aid. People have been switching to Apple desktops and *nix servers fairly steadily, but you're not going to see an overnight change because the cost of migration is so high

      I mean for home users, it boils down to a Wintel system or an Apple... if you're buying a new system its an easy choice IMHO, but what does an unhappy windows user do if they have nice x86 hardware? What do you really expect non-tech-savy users to do when presented with the options of (a) selling their current sytem at a loss and buy new hardware, (b) really making an effort educate themselves for the purpose of switching to an OS with little-to-no commercial apps/games/tech support, mediocre media playback, and a clunky UI (no, I'm not hating on Linux. Fantastic workstation/server, craptacular home desktop) or (c) just accept it & hit the reset button/ bust out the system recovery disk every now and then until it's time for a new box (or a stable release comes out).

      For buisnesses, migrating workstations/servers is only possible if the application support is present, and you have the cost of re-training. Porting any custom C#/ASP/MSSQL/etc to cross-platform solutions is time consuming and software developers are expensive, ditto with *nix sysadmins. Not to mention the fact that any good Windows should be able to eliminate (or at least mitigate) the threat of said security flaws.

      If you already paid for WinXP, why the hell should you have to pay AGAIN for the "security" that was supposed to be there...and in 2k, NT4, yadda yadda yadda?

      Well I'm not exactly a MS fan, but I don't think its quite so sinister. Old versions (even pirated versions) are entitled to security patches for a few years, which is pretty reasonable. To expect lifelong upgrades for free is asking a bit much though. I mean, I expect Honda to issue recalls on any safety issues on my Accord, but don't angry when they won't retrofit it with a hybrid engine.

  7. What does this line of code mean? by Anonymous Coward · · Score: 4, Funny

    if (defaultBrowser != MSIE || defaultMediaPlayer != WiMP || defaultMailClient != LookOut || defaultGUI != FisherPrice)
    {
    alert(Microsoft)
    }

    Heh, my "confirm you're not a script" is "issues." Not surprising.

  8. Re:Is that a word? by andyh1978 · · Score: 5, Funny
    "architects"? Is that even a word?
    Apparently so, nowadays. First you architect solutions, then you're leveraging synergies, and it's a downhill slope from there into corporate marketspeak.

    In the words of Calvin, verbing weirds language.
  9. Cue ominous music by CaptainCarrot · · Score: 3, Funny

    Why do I get the feeling this is the programmer's equivalent of that scene in the teen slasher movies where the girl is going into the dark basement, unarmed and with nothing but a flickering candle for light?

    --
    And the brethren went away edified.
  10. Re:Is that a word? by Anonymous Coward · · Score: 5, Funny

    "You can't be anal retentive if you don't have an anus"

    You can retain someone else's. I have several on a string around my neck. They look like calamari.

  11. slashdotted by Cmdr_earthsnake · · Score: 3, Funny

    Click on link + server not responding + hosted on a microsoft server +MS publicity = slashdotted

    --
    #!/bin/bash
    login root
    chmod 775 universe://
  12. Re:Where is the news? by 0racle · · Score: 3, Funny

    Oh no, something from just over a week ago! Trash it people, its obviously of no use.

    --
    "I use a Mac because I'm just better than you are."
  13. Re:For those of us without speakers... by jtorkbob · · Score: 5, Funny
    Sure! Here is my transcription of the entire link:
    Error: 503 Service Unavailable

    Server returned file not found
    Kind of sums it up nicely, if you ask me.
    --
    AC: Only on slashdot... could the sentence "My hovercraft is full of eels." be moderated "+4, Insightful
  14. That's It?? by Spinlock_1977 · · Score: 5, Informative

    Now I'm only half way through the video, but holy minimizer Batman, is that all they're doing?

    So they discovered software dependencies and configuration management, error handling in the kernel, and reversed one of their previous errors - putting device drivers inside the kernel.

    I'm no OS guru (I'm just an applications guy), but shouldn't they have thrown the whole mess in the garbage and started over? They're referring to the Vista kernel as "NT"!! It's freakin NT!

    NT's karma has waned (especially this week). God help us - we'll be stuck with MS security holes forever.

    --
    - The Kessel run is for nerf herders. I can circumnavigate the entire Central Finite Curve in a lot less than 12 parse
    1. Re:That's It?? by 0racle · · Score: 3, Insightful

      Ah yes, throwing everything out and starting from scratch is a fantastic way to fix security holes and bugs.

      See Also:
      Windows 95
      Windows NT 3.1

      Paragons of stability and perfect programming without a single bug all thanks to throwing everything out and starting over.

      --
      "I use a Mac because I'm just better than you are."
  15. Re:You name it, they've probably been there. by delong · · Score: 4, Insightful

    It must be nice to have mainstream consumers for your main customers, rather than IT pros. You can sell 'em anything, and they'll never know it's crap, because they don't keep up with the industry

    That's why I always skip all these "new Windows release" articles - they're pap. Usually just alot of mouth breathing over widgets and rather pedestrian implementations of mundane technology. Boring, and not very informative. Keeps alot of boring writers in jobs, though. Microsoft is like a 5 year jobs program for "IT Professional" writers that otherwise don't know their ass from their hat.

  16. Re:"architects" by colinrichardday · · Score: 3, Informative

    It would be "viri", not "virii", except that "virus" was a mass term in Latin. Also, aside from "ox"/"oxen", there are no other such plurals of nouns ending in "ox" (no "foxen").

  17. Vista and WMF Vulnerability by blast3r · · Score: 5, Informative

    I haven't read this anywhere yet but I did some testing today and found that Windows Vista is vulnerable to the nasty WMF dealio. I am wondering what else Microsoft is importing into Windows Vista? hmmmm

  18. Re:MMS stream hails from microsoft.com!?! by Covener · · Score: 4, Insightful
    Not to diss the underlying interview [I'm always willing to hear about kernel stuff], but it's kinda odd that the MMS stream originates at a M$FT server:


    It's almost as if this MSDN interview of an MS executive on future MS technology is somehow MS related.
  19. Re:You name it, they've probably been there. by MightyMartian · · Score: 5, Insightful

    Well, it was precisely this sort of hype that kept Windows 3.1 at the forefront while an actual 32-bit operating system that would run existing Windows applications (better than Windows itself) actually existed. Microsoft, through various "computer" magazines (which were nothing more than MS shills), painted a beautiful picture of Chicago, through artists renderings and feature lists for features that didn't even exist. Of course, when Windows 95 finally arrived, it was a bug-ridden piece of crap, but the marketing onslaught and MS's corrupt ways of dealing with PC manufacturers destroyed OS/2. People actually willingly went for one of the most unstable operating systems that MS ever produced.

    --
    The world's burning. Moped Jesus spotted on I50. Details at 11.
  20. Vista and .wmf by QuietLagoon · · Score: 3, Interesting
    the security/reliability of Microsoft's upcoming operating system.

    The answer to one question will determine whther Vista is really an improvement in security for Windows.

    Is the current test version of Vista susceptible to the .wmf exploit that is currently making the rounds on the internet?

  21. Re:Bad audio quality and bad accent by erikdotla · · Score: 3, Funny

    Sorry, but what's an "american accent"?

    I thought an accent was any difference in the way someone speaks compared to american english. If it sounds like american english, it's not an accent.

    I'm from canada myself, but what I'm saying still applies, doesn't it ay?

    --
    # Erik
  22. Re:You name it, they've probably been there. by AnEmbodiedMind · · Score: 3, Interesting
    Yeah sure it is a clever marketing move, but you a way too harsh.

    For example one of the interviews with the vista audio engine guys they talk about how Mac OSX has been a long way in front and how they are inspired by great compeditors.

    They have an OS X box on the wall

    And if you look at the MS Office user interface work, you can't claim that isn't innovative work

    Finally if you actually watched the linked video you'd see they actually talk in depth about the flaws in the windows architecture and how they are trying to move forwards.

  23. Transcript (Just Intros - Working On The Rest) by dch24 · · Score: 5, Informative
    Here's a transcript. I'll write up the other half and post it too. Anybody get the name of the interviewer? I'll just call him "Narrator." And the typos are my fault. Everything else, flame them.

    Narrator: Alright, so we're here for "Going Deep." We have the corporate vice president and some of his architects and they're going to talk about the Vista Kernel so, hello. Can you introduce yourselves.

    Rob Short: Yeah. I'm Rob Short, and I wrote the Kernel and Architecture team for Windows. The Kernel team obviously is the core piece of a system: schedules processes and finds devices, things like that.

    The Architecture Team is something that I wanted to talk a little bit about, because about two years ago, we realized that we were in a little bit more trouble in terms of our ability to predict the impact of changes and to make broad, cross-group changes to Windows, and what we decided to do was have a core group of experts that would help the teams and work right across all of windows to really help figure out the impact of changes and make sure things were happening the way we'd like to see them happen, and I have some of the people with me here today. This is just a few of the people on that team. We've about six people full-time, and we have a much broader team of about thirty architects working the different groups, and they all participate as part of our architecture team but they belong to the different teams

    Narrator: Okay.

    Rob Short: And the idea is to really improve our engineering process and improve our quality of our engineering and be able to predict the outcome of changes that we make.

    Narrator: Okay.

    Rob Short: I've been in Windows for basically ever, I've been in Windows for about fifteen years. I worked on a couple of other things in between, so I left and came back again but mostly I've been working on where the hardware meets the software.

    Narrator: Excellent!

    Rob Short: And I'd like to introduce my next partner in crime.

    Narrator: (laughs)

    Rich Neves: My name's Rich Neves. I've been working here almost three years. I work on the architecture team as Rob just described, and what my responsibility or role these days is is figuring out how to police the dependency between different pieces of the systems so that we can figure out how to compose the system in a more efficient way. By efficient, I mean in a way that isolates developers from the damage they can do to other developers. So basically, Microsoft's a very innovative company, and there's people working on amazing technologies in almost every nook and cranny, particularly in Windows. The challenge we face is delivering that innovation, and what our hope is that we can make innovation itself the bottleneck, instead of delivering innovation, which has been the problem in the past, and to do that, what we're trying to do is isolate pieces of the system from each other, so that developers can know that they can work in a particular area of the system, innovating a technology, without adversely impacting larger parts of the system, that as Rob said we can't predict they're going to be impacted, and in a way that would actually jeopardize our agility in getting those features out that result from that innovation.

    So specifically what we've been doing is taking every binary in the system and assigning it a layer number, which is a rank in a directed acyclic graph. There's about 5,500 binaries in the system. And what we've been doing is getting transparency now into every dependency that developers add to any of those binaries, so that we can understand what's going on. And what's falling out of that is not necessarily just the isolation I described, but also, issues. We call them, sort of, conventional wisdom ... controversies. For example, people might be thinking, well, I want to combine a whole bunch of DLL's into one DLL for perf. Well, it turns out that that's a

  24. Dependency hell by curious.corn · · Score: 4, Interesting

    So they're more or less admitting "essentially ... windows is one big binary..." Woah! Low level libraries and frameworks depending on stuff that's higher level, "in the past we've relied on... lockstep... development process..." and "we're now looking at dependencies in the 6 digits range..." Man, these guys are giving one hell of a bashing to the Microsoft codebase.

    One guy starts talking about modularity and inserting features and plugins into essential services... and I thought objC. But before that another one gets all hot (I chuckled, this guy is a True Nerd, he really likes fiddling with code... congrats) about semicoop multitask where an app renices itself to 100% resource hog tier for a limited time slot (nice try, but what when all the silly apps do the same trick?), but before that there's a talk about usermode ukernel services... I thought about when I used to renice X11R6 to get better performance (when the graph card module was part of the X process).

    I think Bill needs to pull out of tech and sell Microsoft to Apple. These techs are good guys, all they need is a solid process and some decent vision.

    Jobs, are you reading this? Watch this video, it'll make you feel good! :-)
    e

    --
    Mi domando chi à il mandante di tutte le cazzate che faccio - Altan
  25. Re:Um...isn't vista simply rehashed NT 3.x? by cnettel · · Score: 4, Interesting
    Vista is more NT.

    The OS/2 heritage is far more complicated. There are similarities, but the kernel is quite unlike what you found in OS/2 2.x, while NT at some point could have been OS/2 3.x. It's almost as dissimilar to OS/2 as it is to Win 3.1. It was a new kernel that was supposed to be able to run both Win 3.1 and OS/2 user mode apps, so the kernel provides services suitable for that purpose. The OS/2 support was of course never fully developed, but HPFS was supported until a few years ago and NTFS also shares some ideas with it, while not in the actual disk layout.

    If your DX(2?)/66 didn't perform well with NT, I would think about memory rather than CPU. Just the fact that NT is all-UNICODE in the kernel, means that every single string is longer than in, for example. OS/2 and 9x. If all you have is 4 or 8 MB, that alone can be quite significant (especially when you're running Win16 and ANSI Win32 apps and every string needs copying and conversion before really being used in the APIs).

  26. reality check by penguin-collective · · Score: 4, Interesting

    First of all, the video is unviewable even with Microsoft Media Player on Mac, but you can find a whitepaper describing the kernel changes here. Keep in mind that all of this is basically Microsoft advertising for developers; it's not taking a "hard look" at the kernel architecture, it's the kernel developers portraying their work in the best light.

    What's interesting is how little innovation there actually is. They seem to be struggling with the complexity of the system and its dependencies (5500 components)--similar to the problems Linus is having, but multiplied many times over by greater complexity of the NT system architecture. Most of their actual improvements seem to be cleanups and performance enhancements.

    My impression is that the Vista kernel and system libraries are still playing catch-up with Linux in terms of modularity, performance, and functionality.

  27. Re:How much you willing to pay? by Anonymous Coward · · Score: 5, Funny

    DIR SIR

    GREETINGS TO YOU GOOD SIR, PRAISE GOD. MY NAME IS ABDUL-MUQADDIM, A CIVIL SERVANT IN LAGOS, AND GREAT GRAND-NEPHEW OF EXILED MICROSOFT VP ROB SHORT. BEFORE MY GREAT UNCLE'S EXILE, HE DEPOSITED $20,000,000 (TWENTY MILLION US DOLLARS) IN AN ALGERIAN BANK ACCOUNT. UPON HIS EXILE, HIS ACCOUNT WAS FROZEN AND TURNED OVER TO THE GOVERNMENT OF ALGERIA. MY FRIEND IN THE ALGERIAN GOVERNMENT WAS ABLE TO SECURE ACCESS TO THIS ACCOUNT, BUT WE NEED A MOST TRUSTWORTHY THIRD PARTY ACCOUNT INTO WHICH WE CAN TRANSFER THE FUNDS.

    I AM WRITING TO YOU ON BEHALF OF MY UNCLE REGARDING THIS MOST PRIVATE AND PERSONAL MATTER. FOR YOUR COOPERATION AND ABSOLUTE CONFIDENTIALITY, WE OFFER YOU 40% (EIGHT MILLION US DOLLARS) OF THE FUNDS UPON RECEIPT OF THE TRANSACTIONS.

    IN ORDER TO BEGIN OUR TRANSACTION, GOOD SIR, I HUMBLY REQUEST THAT YOU SEND $50,000 (FIFTY THOUSAND US DOLLARS) TO THE BELOW ADDRESS, SO THAT I MAY OPEN A FOREIGN ACCOUNT ON YOUR BEHALF. IN ADDITION, I REQUEST THAT YOU WATCH THE FOLLOWING VIDEO, IN ORDER TO KNOW OF MY GREAT UNCLE. YOUR IMMEDIATE RESPONSE WILL BE HIGHLY APPRECIATED.

    THANK YOU, YOUR HUMBLE SERVANT
    ABDUL-MUQADDIM

  28. Re:Transcript up to 34 min or so by dch24 · · Score: 5, Informative
    (this is the middle part of the transcript)

    Narrator: Fantastic. So can you talk a little bit about what's new in the Vista kernel? So we go from XP; now we're going to Vista. So what are some of the new components?

    Rob Short: A term I like to use is probably kind of politically incorrect on TV is, some of the work we do is kind of like sewers, but if we do this work incredibly well, the stuff is essential, but nobody knows that it's there.

    Narrator: Yes.

    Rob Short: So, if things go bad, obviously you know about it.

    Narrator: Certainly.

    Rob Short: Most of the work that I've been focused on for the last several years has been improving the experience where the hardware meets the software. Things like power management. We have a team of people looking at power management and working to improve how the system behaves, say a laptop for example.

    If you have a laptop, how fast does it turn on, turn off, how good is the battery life? What's the experience when you dock or undock? And we've done a huge amount of work on that. We've redesigned the algorithm for hibernation so that we do a better job of figuring out which pages are already on the disk so you don't have to send more of the pages back to the disk. We've changed the way the power management interfaces to the drivers so that we have a better feel for understanding if we can just shut this thing off, right now. Today, in the older system, in XP, we actually query the driver, say, "Hey, would you, like, mind if we turn off the power?" A lot of times, people haven't coded up the driver correctly. Mostly the drivers don't care, where some really do. A disk driver, it really matters if you, you know, turn the power off in the middle of a transfer. But a lot of other things, you don't care. Mouse, it doesn't really matter that much. You know, you can go across the extreme. So we've done a bunch of work in that area.

    We obviously do a lot of work in performance. One example is we had problems with heap fragmentation, and we've redesigned some of the heap algorithms so we can deal much better with much more random requests. We can deal with those and do a better job with defragmenting the heaps. So those are the types of things.

    Several people--Darryl works specifically on the multimedia, and understanding how we do a better job of not having glitches in multimedia, but that also goes right through the full length of the system. It's not just buried in the kernel.

    We've improved the inter-process procedure call. We have a new sort of fast, lightweight procedure call inside, in the core parts of the system. We ... stop me.

    Narrator: (Laughing) He has a whole list! A cheat list!

    Rob Short: There's an awful lot going on. One area where we actually make a lot of changes over time that I feel really good looking back is in the memory management area. If you think about the early NT systems, Bill Gates used to beat us up, and say, "How come you don't run in four megabytes?" And when you look at that today, and think, we're running regularly in four gigabytes today, and we have the systems in the lab that run with a terabyte of memory, the algorithms that worked back then, and the priorities back then are completely different than they are today. So we've put in work in Vista for improving the NUMA support, which is Non-Uniform Memory Access when you have a multi-processor where some of the memory is closer to some processors than to others, so we do a better job of doing the allocation, making sure that they're allocating memory that's on the CPU, near the CPU that you're running on, and then you try to run the process on the CPU where the memory actually is so you don't get cache thrashing.

    Narrator: Interesting.

    Rob Short: We've done some stuff for the graphics. The graphics processors today are more powerful than the CPU'

  29. Re:Um...isn't vista simply rehashed NT 3.x? by TheNetAvenger · · Score: 4, Informative

    hate to say it, especially since I never downloaded the betas to this "groundbreaking" software, but isn't Vista simply another iteration of OS/2 / NT?

    Not to be rude, but you need to learn a bit about OSes and OS Architecture... Especially the NT Kernel and Architecture, as it somewhat unique.

    NT is the underlying technology that was designed to be the low level OS. Win32 (Windows) runs in a subsystem on top of NT. The NT architecture will be around for many many years, as it was designed to be very extensible and grow to support OSes for many more years to come.

    NT is the actual OS technology, Windows and the majority of the changes of Vista are in the Win32 subsystem or truly a new subsystem that is evolved from the Win32 system, as there is a new API, Graphics Model, etc.

    You see, NT doesn't even have to be Windows, it also run *nix subsystems and DOS subsystems and it even use to have a OS/2 subsystem, and they all ran side by side - being equal. (Win32 got a bit of preference as it was the base Window Manager for the other subsystems. And it has more of a role for managing NT that runs underneath it.)

    Even today you can download a full blown *nix subsystem and install it on any NT based OS, like Win2k, WinXP, Win 2003, Vista, etc. It will run on top of NT just like Windows does and provide you with a full *nix OS with no emulation or vitualization and yet take advantage of the NT Kernel.

    As for great new OSes, 10years from now, even a full Virtual Reality based OS that has no reference to Windows itself could be released by Microsoft and still use NT technology to run the higher level new OS.

  30. I designed the registry by the+ed+menace · · Score: 5, Informative

    ...I'll put on the asbestos underwear for this post...

    In 1990 at Microsoft there were several requirements that drove the registry. The number of third party applications and application writers was growing very fast. Making this worse, a new object system was on the horizon which could dramatically increase the number of independently-authored "components" that needed to be registered. There was a need to store state in a segregated manner so that apps wouldn't stomp on other app's information. Also there was a "new" notion of remote manageability for the objects, so the access method should be easily remotable early in the boot process. Also the OS needed a place to store lots of very small data items.

    It would have been best to use the file system, but the file system at that time was FAT which could not store small data items efficiently. The registry was the first API common between Windows 3 and OS/2 (and also NT), which was a goal at the time. Of course it quickly went out of control, since there was no rational security or ownership model. The registry was kept very very simple in order to maximize the likelihood that the next file system (either the object file system or NTFS) would be able to implement it, including in the NT kernel (which had a very simple API model). It was also the first API from Microsoft that had unused parameters for future features, such as context ids for security, query features, and other stuff. Unfortunately much of that didn't work as planned since very few applications paid attention to the requirement to set them to 0L!

    I didn't expect it to be so massively overused, nor for it to survive beyond Windows 3.x. It was supposed to be superceded by an object file system (that was designed and implemented several times, but never released.)

    There's a good story behind the registry, though: I designed the registry while on a bachelor party for a friend, mostly on a car ride between San Diego and Las Vegas, and faxed in the design from Las Vegas the morning after the party to the responsible program manager. Which might explain much about the design... ;-)