Avalon is the new rendering and compositing technology that Microsoft is developing primarily for Longhorn (Microsoft’s next release of Windows) that is available in beta form on Windows XP.
Avalon is the new rendering and compositing technology that Microsoft is developing primarily for Longhorn (Microsoft’s next release of Windows) that is available in beta form on Windows XP.
Avalon is going to be a 3D windows that uses the graphics card to generate and display the desktop. Where have I heard that before? Apple wasn’t the first but they are the most well known for doing this already. And by the time Longhorn and Avalon come out Apple will have further perfected this technology whlie Microsoft is still trying to get the beta kinks worked out.
Look at what Apple’s Panther current has, add the new things in Tiger and you’ll see what Microsoft is trying to create (although it won’t look _exactly_ the same of course).
Why wait for Longhorn and Avalon though?
It seems Avalon would be very much interesting…but when can we see such kind of GDM in Linux. I know that linux with the new KDE-3.4 is quite slick…but what we actually need is a good graphics rendering engine.
Avalon’s vector based GUI metrics are the thing I am most excited about. Is there anything that can do that in Linux, Mac OS X, or even in a current gen Windows program?
I thought Mac OS X Quartz Extreme was completely vector based using OpenGL? Or maybe it is just per-pixel and supports vector graphics?
here is what apple says about Quartz:
————————————————
“Quartz delivers device-independent and resolution-independent rendering of anti-aliased text, bitmap images and vector graphics. ”
http://www.apple.com/macosx/features/quartzextreme/
———————————
Sounds alot like Avalon:
—————————————-
“Avalon’s compositer allows you to use the full potential of your display. Increase your resolution as much as you can and then adjust the size of everything on the fly. Instead of bitmaps and hard coded font sizes, you have vector based interfaces that simply become more detailed, more defined as you increase the DPI. Same for fonts.”
———————————————
The Graphics Model and the Avalon model (longhorn) are significantly different.
The most important difference is that the Avalon model is built around the idea of retention; whereas Mac model is based fundamentally around bitmap blitting/invalidation.
Retention means that the OS maintains a logical/meaningful representation of what your application intended to display.
More: http://www.oreillynet.com/cs/user/view/cs_msg/33687
Read it. It didn’t say much.
As far as the Mac goes, depending on whether you use Quartz or not depends on whether or not it’s bitmapped or vector-based. The Avalon structure is basically Macintosh’s QuartzExtreme or Linux’ Cairo. The difference being that Quartz is being used right now. Avalon will probably beat Linux into incorporating the vector-based UI since so much of X and the various toolkits are rooted in bitmapped images.
That said, there are a number of circumstances where the bitmapped approach is more efficient.
The driving force for Avalon was the issues Windows was starting to have with laying out elements for displays not running at 72-dpi. Microsoft almost solved the font problem, but other elements of the GUI were not accounted for (close buttons, system tray, etc.). At this point, Linux only does marginally better. The Mac does this very well right now.
Tomorrow I download and compile http://enlightenment.freedesktop.org . Really fast on both AthlonXP 3200+ ATI Radeon9800Pro and Celeron 300, Matrox G200. Of course there is no real 3D flying windows but all so nice, small, quick, remember good old gtk1+ days…
Anyway, ATI and NVIDIA still does not ship good proprietary Linux drivers or device specs. Guess Bill Win again
Avalon would be quiet nice to look at. But I am not going to get Longhor or eXPedition or whatever it is called at least for a couple of years…why? Because my XP will prob have SP3 by then, my machine will be securer not that it isnt right now…I know enough about XP to reduce the size of my XP install by less than a half. Longhorn when it comes out just like all products, well especially MS products will have a crapload of bloatware and bugs and virtually no performance improvements than my already super tweaked XP. I am not going to be spending my money to upgrade to an OS that just looks pretty. I would wait for a more complete version and my complete I mean at least comparable to the current Mac OS X functionality in a Longhorn in terms of features and GUI performance before I buy a copy. Longhorn just is not appealing enough for me to install on my computer unless it comes out with really cool features and a significant performance bump…kinda like going from 98 to XP…
FWIW, the thing most of you are talking about so far is not Avalon. Avalon will take advantage of the GPU accelerated DCE (or whatever it’s called these days) on Longhorn. The DCE is what is most comparable to Quartz Extreme (especially the one coming in Tiger, which I understand will also accelerate drawing of controls and such instead of just prerendered windows).
And, for Surya, Avalon will bw a free download for XP as well, so you investment in XP (and mine) will last that much longer. It might even be GPU accelerated within individual windows though it wont have the nifty accelerated window manager promised for Longhorn.
The Avalon structure is basically Macintosh’s QuartzExtreme
Francois Stiglitz: you a little wrong, avalon is entirely gpu accelerated, with Quartz only composition is accelerated all else is software, 2d/3d/transitions, yes heavy on cpu use, which can lead to sluggish/unsmooth behavior.
Moreover Quartz requires applications to handle their own redrawing, this is not true with avalon on windows.
Oh hey thanks Anonymous for the heads up. That could be quiet cool if Avalon in XP performs the same a Avalon in Longhorn.
Personally I just want to see how Cairo will stack up against Avalon and Quartz.
Is there anything that can do that in Linux, Mac OS X, or even in a current gen Windows program?
Waimea using Cairo.
the same misunderstandings of Quartz seem to come up every time someone talks about it..
1. vectors vs. bitmaps. While Quartz provides very nice resolution-independent drawing commands, Apple’s GUI elements (buttons, scrollbars, etc.) are currently drawn using bitmaps (probably for performance reasons). (This is why buttons only come in three heights, for example .. there are only three bitmaps for the rounded endcaps.) This is why form controls look like crap when you print out a web page from Safari, for example.
Apple will probably move to vector-based drawing of GUI elements at some point, but it’s not happening in 10.4. There’s certainly nothing stopping them from making the switch… when creating custom controls you can already use resolution-independent drawing techniques.
2. Quartz Extreme. Quartz Extreme is simply a GPU-accelerated version of the Quartz Compositor, which as its name suggests is responsible only for the compositing of windows. This provides a very nice speed boost, given that pretty much all windows in Mac OS X have alpha channels. Actual drawing (as opposed to compositing) is done by Quartz 2D, which has only minimal GPU acceleration in Panther.
Tiger will provide Quartz 2D Extreme, which will do as much drawing as possible in the GPU on those graphics cards which are capable of it. Once both Quartz Compositior and Quartz 2D are accelerated (via Quartz Extreme and Quartz 2D Extreme, respectively) it provides extremely nice performance. Honestly, though, QE was the more important optimization than Q2DE.
The real news in graphics on Tiger isn’t Quartz 2D Extreme. Much more interesting is Core Image. Basically it’s filters (think Photoshop) and transitions and other goodies implemented on the GPU. (When one has a decent video card. Otherwise it is done in software, which is obviously slower, but still surprisingly good.) Expect to see a flood of shareware Photoshop knock-offs once Tiger is released. All of the really useful filters (blurs, distortions, etc.) are already built in to the OS, and it provides a plug-in architecture for adding anything else you might want (via plug-ins called “Image Units”).
Oh, and if you’re using a good video card, most of them can be done real-time on video, as well, thanks to Core Video, which allows QuickTime to draw directly into pbuffers. Core Image makes eye candy too easy .. expect every shareware program out there to have a dozen annoying special effects.
Take a look at the list of built-in Image Units:
http://www.apple.com/macosx/tiger/coreimage.html
I wonder if the Avalon and Quartz technologies will have the video card vendors produce a new line of video cards to assist in the rendering of the screen.
Moreover Quartz requires applications to handle their own redrawing, this is not true with avalon on windows.
This is not true. If it were the case, it would be impossible the genie effect.
Avalon is very similar to Quartz. Avalon full hardware acceleration is not true, it is not complety possible with today’s technologies. Bezier curves cannot be hardware accelerated yet. When they say full hardware acceleration (Mac and Windows) they mean that most of the drawing functions can be drawn using the hardware but it is not an absolute term. Not all is possible yet.
Avalon will include lots of bitmpas graphics too. They are needed to make textures, photographics icons, and to give better performance.
Avalon will be a very big leap for Windows, about the same as Mac users did on Mac OS X. However, because of current hardware, PC users will experience a smaller impact on performance than Mac users did 3 years ago. Avalon will need time to mature, as Quartz needed, so do not expect big performance on a first release. That’s why Microsoft is providing a bit-map based interface also (XP technology alike).
Avalon does not offer anything superior to Quartz2DExtreme (Tiger). Real differences will be seen in other parts of each operating system.
Nah I dont think so. Frankly even in games today, all the GPU features are not even close to being utilized or maxed out. GPUs can handle a lot more than the game engines are throwing at it AFAIK in terms of polygons. So rendering some spinning windows or whatever Avalon is going to bring to the desktop should be a walk in the proverbial park for the moder day GPUs and they just keep getting better and better. For eg the ATI R520 to be out in a few months is supposed to be way more powerful than the X800 series and so even IF GPUs of today were not able to handle Avalon which I seriously doubt, by the time Avalon is out for machines, GPUs will have improved evne more!
Great writeup Tim
Moreover Quartz requires applications to handle their own redrawing, this is not true with avalon on windows.
This is not true. If it were the case, it would be impossible the genie effect.
Apps render to a bitmap in memory then that bitmap is used by Quartz to texture the polygons being displayed during the genie effect. Quite possible.
Maybe a better way to look at the difference is thusly:
With Quartz Extreme the OS says “Behold this bitmap unto which you shall draw using routines supplied by me, and I shall composite them with bitmaps likewise rendered unto by others and display them simultaneously without tearing and flickering”.
With Avalon the application says “Behold this tree of shape definitions that I have adorned with colors, gradients, alpha channels and bitmaps and further bedecked with animation timelines and video clips and use it to render my UI as thou wilt in combination with others of like construction”.
Ok, maybe that wasn’t better
Actually, the rendering capabilities of today’s graphics cards is pretty phenominal. Rendering 2D images on a desktop should be within the capabilities of current midrange hardware. For high resolutions, more memory may be necessary or at least helpful performance wise (PCI-Express may help with this). I see this type of thing providing a reason beyond games for having 3D hardware.
This is not true. If it were the case, it would be impossible the genie effect
This ‘genie effect’ requires graphics capabilities no higher that what windows 2000 (gdi+) provides, what are you claiming?
Avalon full hardware acceleration is not true, it is not complety possible with today’s technologies. Bezier curves cannot be hardware accelerated yet
According to Microsoft documents Longhorn graphics for which DirectX (WGF) is the foundation will accellerate (if your hardware supports it) the following:
Primitives:
*Lines, Rectangles, Ellipses, Bezier Curves, Paths, etc.
http://www.microsoft.com/whdc/device/display/aero/default.mspx
http://www.microsoft.com/whdc/device/display/aero/default.mspx
Title: “Hardware Accelerated Graphics and Desktop Composition in Windows”
Unfortunately the document is embedded in a .exe
either your wrong, or OS X does a better job of it than XP.
Either QE manages the redrawing of the Windows (which would make sense because it has true transparency) or OS X is about 100000000 times better at it than XP because even when I had my 400 MHz Mac I ever had the white window problem on OS X. that problem happens when an application is responsible for its own redrawing and it gets swapped out or put in low priority then suddenly is brought back into focus and there is some other high priority business going on so you are left with a white window for who knows how long.
Video keeps playing in real time when you use Expose or when a transparent window moves over it or when the genie effect washes down across it.
you cannot bitmap video.
Hi, i have a S3 Savage on this laptop, can i have an Operating System running on my laptop with a GUI?! or a need to buy another laptop?!
either your wrong, or OS X does a better job of it than XP.
OS X does do it better. Note that he is talking about Longhorn.
you cannot bitmap video.
Why not? As long as the display engine can redraw the screen/scene at least as fast as the video frame rate, you can do it just fine.
a 30 MHz chip that uses system memory and AGP 2.
there is no way to make video look smooth by doing it that way. realtime performance is not achievable via bitmaping.
you cannot bitmap video.
Uh, both WMP and VLC are drawing video to my screen using VMR9, which renders the video as texture, which will get drawn to screen using Direct3D.
Maybe we’re talking past each other in regards to what “bitmapping” means here.
How does Mac OSX achive what it does?
Here are some visual aids for your presentation:
http://arstechnica.com/reviews/02q3/macosx-10.2/macosx-10.2-8.html
http://www.apple.com/macosx/features/quartzextreme/
Howdy all
Does anyone know of documents that compare Xserver (or something simmilar) to QE or Avalon please?
I love reading about the differing designs etc of the “big guns” of the software world, just makes me want to go and buy a Mac though
It will deliver some unique features. So I guess we will see new hardware too. We see a new video card from ATI and NVIDIA twice a year. So you can imagine a video card of 2006. According to some .ppts from PDC’03 you will get pure hardware acceleration for the font rendering only with DX10.
For those who expect to run Avalon on XP. Well it will run, but you do not get the same behavior because Longhorn brings some important tweaks in the kernel. And but the way the whole Longhorn vs. XP story is more about new shell experience. And I just can wait for WinFS .
Just want to say for all Mac and Linux guys. Longhorn is not only about Avalon as a new way to make GUI being hardware accelerated it is about a new programming model. The same applies to the other WinFX stuff. This is what you will not see on Mac or Linux in the near future. What is more important: to have some candy built-in features or a powerful programming model when it take less in times to program the same application?
So be cool. There is no way Apple can be competitive to MS in the near future.
” What is more important: to have some candy built-in features or a powerful programming model when it take less in times to program the same application? ”
What exactly does that sentence mean?
Tiger ships in a few weeks utlizing CoreImage. Longhorn isn’t out of the farm for at least a year and by that time a new cat will be hunting it down. So these comparsions are interesting but 10.5 is what we will be looking forward to when Longhorn comes out.
The point is that Avalon is much more then what you can compare with QE. And does a year change something. Avalon is already more then 4 year in development. I do not think Apple is able to do something similar at all, especially in a few years. Do not be naive. If you have some programming background then you propably understand that jumping on .NET makes MS have the biggest advantage over Apple.
… that almost no one here has done any significant amount of programming on OS X, especially with the CoreAudio/Image/Data frameworks.
Window folks! Try on Objective-C with Cocoa, then come back.
…what PPC distro does Linus use?
Many people confuse and try to imagine a wonderful Avalon that is much better than Quartz.
The matter of fact is that Avalon will propose to windows users compositing environment with rich presentation effects (shadow, visual effects, transparency, etc…) calculated in real time and with hardware acceleration. Avalon will also allow developpers easy integration of rich presentation effect to their application in a more easy way than to go through DirectX. Avalon will use DirectX as a bridge for the hardware accelaration.
Now compare it to Quartz. That’s exactly the same thing that apple is doing with osx. No matter to which extent the os will propose visula effects or support for vector based drawing, the fact is that Apple has built the foundation for rich interface 6 years before Microsoft will introduce their Avalon. Its not trolling, its just comparing technology.
Apple is already doing Hardware acceleration via OpenGl for ALL the effects which appear in the today’s interface of osx. Compositing, shadow effect, transparency, visual effect (dock effect, genie effect, transitions etc…) are accelerated by the hardware. Two dimensiomal content inside the windows is still not accelaretd, but Tiger will propose it with a hardware accelerated CoreGraphics 2D.
Microsoft will simply introduce anything new. Sure for windows users, it will be a big step, for osx users, that’s not new at all. Now we can talk a lot about which os will propose the most visual 3D effects, but that’s not important. The important is to know that the foundation for such effects have been developed at Apple long before Microsoft could do it.
Tiger will by the way propose a new graphic and media architecture much more layered. Quicktime (completely re-designed) will lie on the top of Quartz (which includes now CoreGraphics, CoreImage, CoreVideo), build on the top of OpenGl which is used as an hardware abstraction layer. Believe me , that’s a dam powerful architecture.
Sure Avalon is also very intersting, but somehow as described by microsoft, Avalon is only for interface, rich presentation, and easy API for developing advanced effects for applications. Basically that’s what Quartz basics has been doing for 5 years. But i think that Tiger will go even further with CoreImage and CoreVideo.
With those technologies, we have for the first time an advanced and innovative way to take advantage of today powerful hardware with the GPUs and the vector unit in the G4/G5. We are not only talking about using the GPU for rich presentation, visual effect in the interface, but for real work to be done. With CoreImage/Video we have technologies that are amazingly powerful for dealing with complex task on images and videos (per pixel 32 bit floating point processing). We are talking here about next generation of image and printing applications, video applications, film post production applications, photography applications, scientific applications and so on. Its really a new and powerful way to use the GPUs, but Coreimage/video also uses Altivec, basically speaking CoreImage/Video is all about SIMD processing, and its dam powerful. Technologies for real work, and also Core Image/video can be used very easily for visual effects on the user interface.
Sure Avalon is powerful, but it is used for the same purpose as Quarz has been doing for years. Core Image/video really bring a new step in computing technologies.
It’s accelerated on Ati in hardware since a looong time. I remember Ati push this before Unreal was out(the first one).
On Nvidia it’s only accelerated too with the last iteration of the Geforce series (driver only permit it now, but well – still no one to use that fonction apart from some technology demo and with some video decoder(to apply some effect on the image with a low cpu cost, faster to composite the effect on top of the picture in hardware))
Everyone here is determined to compare Avalon to Quartz or what Apple has been doing in OSX.
They are SO far from being the same it isn’t even open for debate.
Here is how it works, simply…
Apple’s Quartz uses the GPU to render the “Bitmap” image of the application off-screen. This allows them to do cool tricks like the genie effect and other nice transparency effects without killing too much of the CPU. The rest of the Eye candy in OSX is CPU based, as the GPU doesn’t do anything to assist the drawing of most of the UI elements. This is why the Mac UI and Shell components are STILL all Bitmaps and NOT vector elements.
Avalon is a FULL 3D and VECTOR based rendering engine technology, that utilizes many of the 3D GPU Card’s features to not only assist in drawing elements on the screen, but also to speed up the drawing of elements on the screen. The 3D features of the GPUs modern processor can do amazing things very fast. Avalon will be the way Microsoft allows even simple developers to access these features without having to be a DirectX and gaming wizard to display content with 3D.
Furthermore, Avalon is not just about the OS display 3D and vector based elements, it is actually more about making these elements easy for the common developer to access and design into their application. Which is something Apple doesn’t do, nor can they do.
Let me give you a case in point. In a new Avalon application this is some of the things you will be able to do in a simple program: Create a 3D Button – Make the Button Clickable, Texture the Button to make it metallic and Shiny (all in vector all in real-time), next add a couple of light sources to the button, and allow the button to have a shadow, then have a true camera point for the application. Then just by moving the camera point in the application, you can virtually fly around the button you just made ‘in real time’ and the button will still be clickable and function like a button should. Add in some floating textures in the background, fog effects, and even put a video playing on the back of the button, so when you fly behind the button (by moving your camera view) you can see the movie on the back of the button playing.
Not only is this application SIMPLE, but writing it for developers in Avalon will be a matter of a few lines of code. It is a whole new development interface direction Microsoft is taking us, by providing some of the graphical power and enhancements of lower level hardware access like DirectX has provided with an upper level application development process using simple coding to define an application interface that is fully 3D and vector based. (No more pixelization and no more containment to one point of view on the application UI)
Again, comparing Avalon to what Apple is doing shows a complete lack of understanding of the two rendering technologies or your own personal bias into a religion of OS vendors. I like my Mac and I like my WindowsXP PCs, but the rendering and display concepts and technologies here are completely different, and if Microsoft continues to pull off Avalon, they will have jumped way past not only Apple, but every other OS out there. Not in just the UI they will be providing, but the whole ease of use and development model they will be bringing to the table for developers. Applications will no longer be a plain or inflexible and will have a whole new 3D element of creativity added to them by ALL developers.
Sure, MS technology is way more powerful because it fully leverages hardware 3D acceleration, while poor Apple, not having the resources to develop anything better, will have to settle for simple hardware compositing and CPU bound rendering that will hog the CPU and give sheetty performance.
Ha!
Please, sober up and check the hardware requirements for Longhorn. Then go to an Apple store and see that you can buy *today* a $500 Mac mini which does all this and more, and it does just fine with a 1400MHz CPU and a Radeon 7000-class GPU.
“Let me give you a case in point. In a new Avalon application this is some of the things you will be able to do in a simple program: Create a 3D Button – Make the Button Clickable, Texture the Button to make it metallic and Shiny (all in vector all in real-time), next add a couple of light sources to the button, and allow the button to have a shadow, then have a true camera point for the application. Then just by moving the camera point in the application, you can virtually fly around the button you just made ‘in real time’ and the button will still be clickable and function like a button should. Add in some floating textures in the background, fog effects, and even put a video playing on the back of the button, so when you fly behind the button (by moving your camera view) you can see the movie on the back of the button playing.”
*shudder* I fear the many different app looks with animated, flying buttons with fog effect that will show up.
“Not only is this application SIMPLE, but writing it for developers in Avalon will be a matter of a few lines of code. It is a whole new development interface direction Microsoft is taking us, by providing some of the graphical power and enhancements of lower level hardware access like DirectX has provided with an upper level application development process using simple coding to define an application interface that is fully 3D and vector based. (No more pixelization and no more containment to one point of view on the application UI) ”
I don’t see Avalon as anything more advanced than Quartz, QE, Q2DE, CoreImage, Interface Builder and the coming resolution independant UI – just put under one name.
Apple could probably make Iinterface Builder in a way that you could make your own button design et al using OpenGL, but I don’t think they want to.
umm… what exactly does .Net have over Cocoa? Nothing!!! .Net has Managed C++, Cocoa has Objetive-C and Objective-C++(a bridge for C++ to the cocoa framework). .Net has C#, Cocoa has Java. .Net has VB.net, Cocoa has Python. as for WinFX (the new API), that is just a thin wrapper over win32 (according to Mr. Grimes of DDJ). well to “Match” that we have all the core interfaces that are now available, offering a lot more power than is available in WinFX.
Try not bashing a technology that you do not understand. you end up looking foolish.
quote: Sure, MS technology is way more powerful because it fully leverages hardware 3D acceleration, while poor Apple,….
Apple has different goals with OSX than MS has with Longhorn, equating Quartz Extreme to Avalon is as silly as equating spotlight to WinFS (spotlight is a great desktop search engine while WinFS will supply capabilities such as a fully transactional filesystem).
For anyone that has not seen it here is a link to last years WWDC Graphics and Media State of the Union.
http://stream.qtv.apple.com/events/jun/wwdc_2004_qt_sotu/wwdc_2004_…
For anyone that has not seen it here is a link to last years WWDC Graphics and Media State of the Union.
http://stream.qtv.apple.com/events/jun/wwdc_2004_qt_sotu/wwdc_2004_…
AHHHH… WinFS is NOT going to provide a full transactional File System. it is going to sit on top of NTFS and index meta data.
either there are a lot of people who missed a lot of news over the last year or people assume FS means file system and that is that. the FS means Future Storage. WinFS will have feature parity with Spotlight. Both will have an API for Developers to take advantage of. Both will support Saved Queries. Both will store file meta data for content based searches.
what we do not know about WinFS is how it will get its meta data. will it harvest it via a filter system like Spotlight, or will the user have to add the meta data at the time of saving the file?
All you’ve described is an OpenGL viewport that can be clicked.
ANY os can do that, and has been doing that for years.
Saying “but now its a widget” doesn’t change anything.
Much as I hate to admit it, Avalon seems close to the true successor to Display Post Script (from the NeXT and Sun days! woo!). It’s a vector-based presentation engine with a language and object model accompanying it. Too bad that language is XAML (really, how many XML-cousins do we need?.
For those who don’t know, XAML is an XML-derived declarative programming language used for presentation in Avalon. Ideally, every Avalon widget, object, and control is described in an XAML “file” with some C# behind it for logic and event handling (so it can “do” something). Because it’s an MS-invented XML-flavour of the month, they can tie it into the rest of Longhorn (specifically, the Indigo services framework) easily and achieve their goal of unification of internet content and desktop content under Internet Explorer. Basically, Explorer.exe == Iexplore.exe for all Avalon apps. Of course, you inherit all of the .Net on Longhorn niceness as well (automatic hardware acceleration, managed code, etc.). I wonder how security and protection from malicious XAML code will be handled? Hopefully better than ActiveX was.
Mind you, clever people could find a way to do everything XAML does with XML+XPath+SVG+CSS+XUL+XSLT. Or Macromedia’s suite of products. Or in Display Post Script + Objective C (mmmm .. OPENSTEP). You get the point, right?
–jm
How is Display PDF different? PDF maintains its aspect ratios and appearance no matter the resolution. Just like Post Script. XAML seems like a “same tech different implementation” of DPS/DPDF.
You can read about winfs and transactional NTFS here:
http://weblog.cemper.com/a/200311/22-longhorn-transactional-program…
modman: AHHHH… WinFS is NOT going to provide a full transactional File System. it is going to sit on top of NTFS and index meta data.
Yes, winfs will provide a Transactional File System Layer: see http://www.computerperformance.co.uk/Longhorn/longhorn_WinFS.htm
http://msdn.microsoft.com/data/winfs/default.aspx?pull=/library/en-…
go there.. read that. WinFS is a layer on top of the file system. MS calls it a file system but it is not. it is the EXACT SAME THING as spotlight.
right from MSDN’s Mouth:
For traditional file-based data, such as text documents, audio tracks, and video clips, WinFS is the new Windows file system. Typically, you will store the main data of a file, the file stream, as a file on an NTFS volume. However, whenever you call an API that changes or adds items with NTFS file stream parts, WinFS extracts the metadata from the stream and adds the metadata to the WinFS store. This metadata describes information about the stream, such as its path, plus any information that WinFS can extract from the stream. Depending on file contents, this metadata can be the author (of a document), the genre (of an audio file), keywords (from a PDF file), and more. WinFS synchronizes the NTFS-resident file stream and the WinFS-resident metadata. New Longhorn applications can also choose to store their file streams directly in WinFS. File streams can be accessed using the existing Win32 file system API or the new WinFS API.
that is EXACTLY what spotlight does. so I guess spotlight is a file system as well.
http://developer.apple.com/macosx/tiger/spotlight.html
read all about it!!!
same technology as winFS.
modman: that is EXACTLY what spotlight does
(1) WinFs is a storage system. What that means is that items can exist only within WinFS and have not counterpart in NTFS streams. (2) WinFs supports transactions. (3) WinFs supports relational access and data schemas.
These are feature 3 items which reflect nothing from Spotlight. So your claim that Spotlight and WinFs are the same is as invalid as your claim that Avalon is the same as Quartz.
I’ll believe it when I see it..
dude now you are talking semantics.
WinFS manages the file meta data and path in NTFS. it doe snot manage the physical location on the disk. no matter if you save your data as a WinFS store or an NTFS store the data is managed on disk by NTFS. WinFS adds a layer that manages other information about the files. the difference between a store in WinFS and a store in NTFS is that the NTFS store is not necessarily known by WinFS and may not be indexed. so basicly, making a winFS store means that WinFS will manage its location in NTFS. that is it.
MS will do basic IO operations with NTFS to be transactional. I am not sure about file writers. But other operations will be transactional. Otherwise how their can implement transactional WinFS. And MS draw transational NTFS out of WinFS.
here is my point. WinFS, with all its features, is not a true file system in the sense of the traditional word. it is not like Oracle which can be installed on a raw disk and manage the files itself with out.
“as for WinFX (the new API), that is just a thin wrapper over win32”
No it’s not, you’re completely wrong. Go read microsofts site on winfx. Some services will be wrapped for compatibility only.
http://www.ondotnet.com/pub/a/dotnet/2003/11/24/longhorn_01.htm
This is what Rich Grimes said in Dr. Dobbs Journal. this is not some flippant claim I am making here. I trues Rich Grimes.
Of course WinFS is not Oracle DB. But as far as I know you will be able to store binary data (including files). So it can contain not only metadata about files. People say that the WinFS implementation borrows source code from SQL Server.
but that does not mean that WinFS will be able to manage the location of the data on the disk. and I seriously doubt that it will because Data Bases do not function well as file systems unless they are given 2 – 3 times the amount of disk space that will be expected to be used because Databases use hashing to maintain performance. it would be much smarter of MS to just have a default partition for WinFS that is managed by NTFS and have WinFS just dump the files that are WinFS stores right in the root of that directory/partition. then the file location would just be Foo:/ or c:/.WinFS and WinFS will not have to do any look up for the location of the data.
I do not think that it is a good idea to put WinFS to a separate partition. What if I have two hdds. When I move one to another computer I want corresponding metadata to be moved too. I think MS will have a piece of WinFS as a file somewhere in System Volume Information for every partition. To prevent its fragmentation it would be nice to let it grow from the end of the partition. They can also add some background service and it will move other files which can potentially prevent the growth. Actually there are a lot of things which can be done to make this idea work nice.
And it is definitely possible to implement to options.
1) To have a regulars files on a volume and refer from WinFS.
2) To have files as BLOBs in WinFS. And then map them as regular files to support Win32 API access.
There are a lot of pieces of information that a similar model will be implemented by MS. And of course WinFS is more like a database. You will be able to query data using SQL statements.
yes, it makes more sense to have a WinFS directory on every partition and volume. but also, if you read the MSDN document, WinFS will have the ability to see NTFS files. in that case, WinFS will store the file location and monitor the file for changes in the NTFS stream and make the corresponding changes accordingly. The only diffrence with this and having WinFS store the data is that WinFS is not the gatekeeper if you access the file directly via NTFS and WinFS cannot make changes in NTFS regarding the file because it does not own it. If the file was an WinFS store, it would manage the NTFS stream regarding the file.
also, SQL is just a language. Spotlight is also a database with its own Query language. if you read the document I linked about it you will see some info regarding how to make a query.
I would just like to say…just wait and see what the new Longhorn would be like. Apple has an impressive product no doubt. Longhorn has a much more bigger share of work to do if they are to surpass OS X. CoreImage, etc technologies in Apple are amazing and I think Micorosoft’s Avalon will probably be similar to that because if you can morph and twist and add lighting and so on to buttons, I am sure they can apply it to just about everything else being rendered on the screen. I am one who likes to play the waiting game. I am not even going to upgrade to Longhorn anytime soon because I want the kinks worked out. And besides MS is protecting my investment by releasing SP 3 and Avalon for XP. Just wait and see…no need for speculation or reading docs that claim every bit of info on Avalon because by the time it will be release the featureset may end up being different. My 2 cents.