- change terms for OEM licensees so that they wouldn't be penalized for selling machines with other OSs or without OSs
- remove limitations on hardware on licensing for netbooks, thus removing performance and specification limits that kept those machines less powerful than they could be
- bundle IE 9 and pressure it into standard compliance
- remove any IE-specific HTML rendering code in the user interfaces so that the user could replace the HTML rendering engine with any other engine that implemented the same, clearly defined, public interfaces
- publish all interfaces for HTML rendering and JavaScript execution so that third parties would be able to provide plug-ins to replace or use those services interchangeably
- publish a list of all patents Linux and other notable free software projects may infringe and work with the community on solving the issues, perhaps entering a cross-licensing agreement with the Open Invention Network and donating patents to their pool
- adopt a modern file system, perhaps licencing ZFS from Sun and replacing NTFS
I guess being in charge of Windows 8 would not be enough, but it could be a start.
None of these things would help Microsoft at all. Basically, what you'd do is run Windows 8 for the benefit of all of Microsoft's competitors. That might be noble, but it's pretty dumb.
>- adopt a modern file system, perhaps licencing ZFS from Sun and replacing NTFS
Long time windows and Linux user, recently bought a macbook. The first thing I noticed is how smooth application running is (mine doesn't have SSD). In windows you can actually "feel" an application opening or when you are doing search for files. Nothing like that on Mac/OSX. I wonder if it has something to do with the file system. I have been told that NTFS is supposedly a superior file system than HFS+. I have no idea if its true or not.
I'm curious what you feel makes NTFS more modern than HFS+. From all the documentation I've read, they seem fairly comparable in terms of feature sets (extents, fine-grained ACLs, etc) and both seem pretty modern, but there may be 'under the hood' implementation details I'm not familiar with.
My favourite example is filesystem transactions, so that you can group sets of changes into a transaction, then roll back or commit in the future (e.g. if you overwrite a DLL at the start of an installation, but then you can't overwrite another one later, you roll back the transaction). I've been wanting this in OSes for years.
Single-instance storage - the system inspects two sets of files (e.g. installation images on a network server), and if it finds identical files, it 'consolidates' them on disk. The two files are still different (if you change one, only one changes), but as long as they're identical it conserves disk space.
User-transparent on-disk encryption
Volume shadow copy (which I knew about already)
The USN Journal tracks all changes made to anything on the disk; it's similar, in a way, to OS X's filesystem access hooks, but not quite.
Yeah, NTFS is an excellent filesystem. Unfortunately many of its features such as streams and reparse points are rarely used.
Besides, you have to compare like with like. When NTFS was introduced, most Unix systems were still on something like UFS. If you wanted a journalled filesystem back then (and weren't on IRIX), you had to pay cash for VxFS.
To the one who modded this down possibly because of the idea that NTFS is "modern" (of HFS+, BTW): list one feature of NTFS that hasn't been around in other filesystems for 5 years or more.
fragmentation prevention? OS/2's HPFS had that
long file names? Apple's DOS 3.2 had them (up to 33 chars)
journaling? ext3 had it, for both data and metadata
symlinks and hardlinks? Unixes had them since the beginning of time
multiple forks: more a bug than a feature. Macs MFS had it.
I think what you're "feeling" is a simple matter of disconnecting your UI thread from the "do stuff" thread. It's not the waiting that aggravates us most, it's the fact that the waiting bits drastically slow down, if not disable our ability to do other things in the meantime.
I think you are right. If I have several application minimized under windows and I try to go back to one app after few hours it not only takes a long time to maximize its stop everything else from working. The performance get worse as you use your computer longer. I remember my fresh window7 install was a nice change over vista but it has gone worse in last few months and it gets slightly better every time I defrag HD and register, it gets worse again after few weeks/months.
This never happens on OSX. They are obviously doing something right.
OS X will still fragment large files - they don't fit in the catalog so HFS+ compression won't work on them (not that it works on user files anyway), and the auto-defragmenter only works on small things.
The difference is Apple doesn't ship a defragmenter, so you don't care. I think this solution would work just as well for MS.
With HFS+ on OS X, whenever the operating system accesses a fragmented file under 20 MB, it checks to see if there is a large enough contiguous block of free space elsewhere on the disk to defragment it to; if there is, it silently moves it.
Thus, you're almost guaranteed to never have fragmented files under 20MB (unless your disk is a complete mess). Above 20MB, you typically don't get significant fragmentation until your drive is nearly full and the system has to pick and choose free space blocks from all over.
I'd really like to know what is so unHN-like about my post. Maybe my information is wrong and/or outdated, but I was just presenting the information that I had, hoping it would further discussion and/or be useful to someone.
Sorry, just something I remember reading in a forum post a while ago. I think that forum may have been Slashdot. The gist of it being that the original specs made room for a lot of features that Windows didn't support at the time, and Windows has slowly been adding them as time moves along (i.e. hardlinks, symlinks, etc).
The closest I can come on Wikipedia is:
> It is also clear that NTFS owes some of its
> architectural design to Files-11 used by VMS.
> This is hardly surprising since Dave Cutler was
> the main lead for both VMS and Windows NT.
No. My windows 7 is a quad-core desktop with 4GB memory. My macbook is a dual-core with 2GB memory. I don't mean to say that I don't get the occasional beach-balling and slow app start time, but generally speaking much more responsive than windows 7.
Still, ZFS sports adjustable redundancy, checksumming to prevent silent corruption, block-level deduplication, zero-cost snapshots and lots of other niceties neither HFS+ nor NTFS support such things.
BTW, BtrFS on top of LVM will support a lot of that too, as soon as it gets ready, something I suspect it's not. It also sports better disk allocation method (blocks and extents vs. slabs). It would be really nice if Oracle decided to merge both filesystems (or, at least, the feature-sets)
> - remove any IE-specific HTML rendering code in the user interfaces so that the user could replace the HTML rendering engine with any other engine that implemented the same, clearly defined, public interfaces
How many Windows users do you think would do this, or even know what it means, as a percentage of the total?
The system should be completely modular. HTML rendering should be a service and any provider should be able to plug into the service infrastructure to provide it.
I imagine faster engines could be easily developed by the market, provided there is the opportunity for competition. Companies could also roll-out in-house developed, specific components that would plug into the system and provide added/reduced functionality in accordance to their needs.
Of course, that would sabotage the whole standard lock-in Microsoft employs to retain market share. I don't care. That's what I would do. And that's probably why Microsoft would never hire me ;-)
- change terms for OEM licensees so that they wouldn't be penalized for selling machines with other OSs or without OSs
- remove limitations on hardware on licensing for netbooks, thus removing performance and specification limits that kept those machines less powerful than they could be
- bundle IE 9 and pressure it into standard compliance
- remove any IE-specific HTML rendering code in the user interfaces so that the user could replace the HTML rendering engine with any other engine that implemented the same, clearly defined, public interfaces
- publish all interfaces for HTML rendering and JavaScript execution so that third parties would be able to provide plug-ins to replace or use those services interchangeably
- publish a list of all patents Linux and other notable free software projects may infringe and work with the community on solving the issues, perhaps entering a cross-licensing agreement with the Open Invention Network and donating patents to their pool
- adopt a modern file system, perhaps licencing ZFS from Sun and replacing NTFS
I guess being in charge of Windows 8 would not be enough, but it could be a start.