Post a Comment
Negative. OS X has yet to feature a complete-off mode ("hibernate"). Its sleep mode is definitely great, but any modern PC supporting S3 also turns off entirely (but keeps the RAM powered up). I really wish it did have this, as I could hibernate my Mac Mini rather than turning it off all the time (I take it to and from work, and use it at work/home).
I really like the hibernate feature in Windows. It has come to the point where I never do a full shut-down on my laptop, but instead put it into hibernate. As a result, it has a total uptime of something like 55 days.
Linux, on the other hand, could use some solid suspend/hibernate implementations. The last time I tried to hibernate my laptop with swsusp2 in Linux, it ended up completely corrupting my ReiserFS partitions. Unacceptable.
Yeah, it was all stable. The problem, more specifically, was that it "hibernated" fine -- or at least appeared to do so. Upon turning the laptop back on, it did a complete hard-lock after some kernel initialization (I'm assuming at about the time it would be resuming from the swap).
After I forced the power on the laptop off, and then turned it back on, my partitions were corrupted.
This comment is a little off base.
First off, under windows, hibernate is not S3, it is S4. The difference being that S3 keeps the ram powered up, swaps the cpu registers to ram. This results in resuming from this state in a few seconds. S4 swaps the memory to disk, then powers the machine down. It is effectively in the same state as S5, which is shut down. This state resumes in around 10-15 seconds, including bios. It is faster than a startup from complete power off, though, and a very useful feature.
No comment on the mac, not familiar with their power management, although, I would assume it is acpi, so it would have s1-5 states as well.
Linux is another issue. Yes swsusp2 has issues. Mostly related to non vanilla kernel modules, such as fs and binary modules, like nvidia, ati, etc.
I agree, hibernate would be useful for a Mac Mini that's used like a notebook; but the Mac notebooks don't need a new mode.
Forgetting for a moment how confusing all these modes are (suspend, hibernate, S3?), an iBook or Powerbook goes to sleep when you close it and starts up instantly when you open it, whether that be a few minutes later or a week later (which is the longest I've let my Mac sleep). If the battery is too low by that time you can't start it until you plug it in, but it still starts up right where you let off.
So unless you regularly need sleep times of more than a few days, the Mac doesn't need the confusion of all these additional modes.
What's worse, however, is that applications and drivers can veto a user's decision to hibernate or similar. In Vista however, applications will be warned that a computer is entering sleep and have a second or two to save what ever they need to, but the programs won't get a say in whether the machine slumbers.
Just like unix: Solaris, HPUX, *BSD, Linux, OSX, ... .
The more things change, the more they change to be like *nix.
Since this, like enforced permissions, networking, and multi-user mode, are defaults in unix systems and not in Windows, expect that many apps and utilties will break with this change.
Now, if only Microsoft would implement 'everything is a file' and complete ACL/MACL permissions I wouldn't go nuts running into so many odd events when using Windows.
When shuting down or going into sleep-mode Mac OS X, gives you 2 minutes to save work, or select Okay to shutdown / enter sleep there and then or click cancel to pervent the shutdown / sleep-mode.
So not quite the same. But true applications afaik can't veto the process, it has to be user done.
RE: Sounds...familiar...hmm...
Did anyone else who actually read TFA feel that by the end, you had just wasted a few minutes of your life reading an in-depth analysis and debate of one of the biggest non-features ever?
"Away" mode? What is that? Blanking the screen and muting the volume? It can't be anything else; it's not like you can safely spin down all the fans of the machine just because you think it isn't gonna be doing work for awhile.
As for another poster's comments: yes, I wish swsusp2 would get more polished. I took the two hours to get it set up perfectly with my laptop, and even use BootSplash for progress bars, and I'm happy, but most users won't deal with that.
I think a better power save mode than that would be this:
"Windows has detected a crappy notebook toaster, err processor, and is shutting down. Please contact the vendor and ask them to learn how to make and market a low power chip. Thank you, and may Transmeta RIP."
Tee Hee.
I think Away is what we refer to as a "checkbox feature."
SWSUSP2 hard-locked on a plain-vanilla kernel with no proprietary/binary drivers. OS X does not use ACPI, as we're talking about PowerPCs here. ACPI (AFAIK) is an Intel thing designed for x86 PCs. OS X has no hibernate (S4-equivalent). OS X has an S3-equivalent ("sleep").
Did that clear things up?
Dooes anybody know if this particular issue is fixed in Vista: http://ubuntuforums.org/showthread.php?t=32457 ?
In short, when Windows enters Hibernation, the file cache isn't cleared. This is no issue if you don't change the contents of the filesystem during hibernation state. But if you change them somehow, for example by booting another OS, expect some corruption; most notably: any file created after hiberation is simply deleted when booting up.
This goes a lot deeper than just file caching. You would have to completely unmount the partition before being able to safely use it in another operating system. This isn't a "Microsoft bug", it's the nature of file systems, and every OS would suffer from this "limitation".
There might not be much in the file cache, but the file allocation table is still open, there are still open file handles, there are still unsaved files, and so on.
This goes a lot deeper than just file caching. You would have to completely unmount the partition before being able to safely use it in another operating system. This isn't a "Microsoft bug", it's the nature of file systems, and every OS would suffer from this "limitation".
NTFS is supposed to be a journaling file system; if properly enabled, the file system should always be consistent or can be 'rolled back' to a consistent state.
EXT3 is a journaling file system. You can pull the plug under heavy load and it will be OK on the next boot.
So, no, this problem does not impact every OS.
OK...one addition.
If they were using Captive -- the Microsoft NTFS drivers running under Linux from a wrapper -- the file system should not have rolled back any system edits.
If they used the Linux kernel NTFS drivers, no such luck. Since NTFS is not documented, the Linux drivers aren't fully compatable. The journal roll back that occurs is exactly what I'd expect when comming out of hibernation.
You have no idea what you're talking about. Let's look at this in detail:
In Windows
1. File allocation table is in RAM
2. Some files are open, and expected to be in a certain state.
3. File seek points are in certain places.
4. File system is marked as dirty (not unmounted).
You hibernate Windows, and none of this changes. You then boot into Linux, and start making changes. Suddenly what Windows remembers in terms of a FAT table is wrong. Certain files might be changed that are still open over in Windows. Suddenly the data is in different places, and programs in Windows may crash the moment they try to work with an open file. Linux will try to correct the file system because it's been marked as dirty -- this can lead to any number of other problems.
The list goes on. You should NOT be using the same file system at the "same time" with two different operating systems, mounted twice. That is quite literally a braindead thing to do.
As for EXT3/NTFS ... yeah, they're journalled. Journalling doesn't prevent data loss, however, it just guarantees that the FS will always be in a consistent state.
Poo makes some excellent points; excellent because he's right. You can't have hibernate and eat your dual boot cake too!
It'd be possible to solve these problems, but it'd involve a lot of work. The system would have to have a new signal for programs to support telling them to close out all their file handles: Anyone whose done any application coding can tell you what that'd mean for some programs.... Even if you got this to work; which would amaze me; it'd probably take as long as rebooting!
And whoever has been marking him down on this thread should have their voting capabilities removed or something. That's just rediculous. His name alone is not reason to vote him down guys!
Is there any documentation on what is done (and what isn't) in Windows when entering hibernation. I have read several articles at Microsoft's page, but I haven't found a detailed explanation on the process.
For example, from: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dn...
Although this applyes for XP Embedded, I assume that the critical filesystem information is stored in the file system cache only. As unmounting will actually clear the cache, that is suggested for embedded devices.
Does the same apply for Windows XP?
The gory details of what is stored in the filesystem cache while in hibernation mode really isn't that important: regardless, if you hibernate and use the filesystem from within another OS effectively between clock cycles of the OS in hibernation, you run the risk of hosing up the system horribly.
The *only* way you can be assured that things won't get mangled up in terms of using a filesystem that was used by the OS that's currently in hibernation from the other one is to unmount the filesystem, as that will completely close out all handles to files on it, and leave the filesystem in a perfect state, and leave no dangling applications that were expecting things to be the way they were in the previous clock cycle.
If you want to safely exchange data between any mutation of Windows and any other OS while Windows is in hibernation (note that this will apply to more than Windows being in hibernation) then what certainly works correctly (note: I do this myself) is to use a removable volume, such as a Jaz drive (I've got one of those) or a Zip drive, etc. that you can write to, eject the disk before entering hibernation, then reboot into the other OS to use the data. This is guaranteed to work because when you press the eject button on the outside of the drive, or eject it from within Windows, the drivers make sure that things are flushed before it is ejected, assuming no files are otherwise open on it from within other applications.
It'd be possible to solve these problems, but it'd involve a lot of work. The system would have to have a new signal for programs to support telling them to close out all their file handles: Anyone whose done any application coding can tell you what that'd mean for some programs....
No, they wouldn't. Flush the cache and the drive(s) are consistant. The contents of the running programs would be stored in swap. As long as you didn't mess with that...the drive and cache are consistant on return from hybernation.
Even if you got this to work; which would amaze me; it'd probably take as long as rebooting!
So, it's OK to take shortcuts with your data. I'm starting to understand what the Solaris folks are talking about (everything is an atomic write under Solaris and is not cached).
And whoever has been marking him down on this thread should have their voting capabilities removed or something. That's just rediculous. His name alone is not reason to vote him down guys!
While the moding him down might be harsh -- I have no problem with him stating his opinion -- it looks as if someone doen't agree that he's being constructive. With a nic like 'Linux is poo' you have to wonder what his motivations are even before the first word shows up.
Poo makes some excellent points; excellent because he's right. You can't have hibernate and eat your dual boot cake too!
I see now, you both are wrong. That's why you think he's right or make excellent points.
You can have both, but nobody implemented it yet, surely because there are more important things to get right about hibernation.
It'd be possible to solve these problems, but it'd involve a lot of work. The system would have to have a new signal for programs to support telling them to close out all their file handles: Anyone whose done any application coding can tell you what that'd mean for some programs.... Even if you got this to work; which would amaze me; it'd probably take as long as rebooting!
That's because all you know is Windows and the Windows way of thinking. Be prepared to be amazed : Linux can do this without problem for all apps without recoding anything. My shutdown sequence uses this as a last resort to assure the FS are consistent before halting the machine. It's very simple actually, no unmounting involved : you just remount all the FS read-only !! And this is in Linux since several years already (if not from the beginning of ext2fs).
For you to be more amazed, it takes only the time needed for the FS to put himself in a consistent state, which is less than 1 second for all the FS at home (and I have 10+ ...).
Just one more point where Windows is years behind, by your own admission.
Ookaze
That's because all you know is Windows and the Windows way of thinking. Be prepared to be amazed : Linux can do this without problem for all apps without recoding anything. My shutdown sequence uses this as a last resort to assure the FS are consistent before halting the machine. It's very simple actually, no unmounting involved : you just remount all the FS read-only !! And this is in Linux since several years already (if not from the beginning of ext2fs).
For you to be more amazed, it takes only the time needed for the FS to put himself in a consistent state, which is less than 1 second for all the FS at home (and I have 10+ ...).
Just one more point where Windows is years behind, by your own admission.
Good comments, though I doubt that they will listen.
It's amazing, isn't it? I get frustrated when people spend time dealing with already solved problems...or even go out of the way to defend them as if that's the right way to do things!
You have no idea what you're talking about.
Yes, actually I do. Check my follow on message for additional details, though. In this case NTFS likely did the proper thing; it rolled back the modifications.
In Windows
1. File allocation table is in RAM
2. Some files are open, and expected to be in a certain state.
3. File seek points are in certain places.
4. File system is marked as dirty (not unmounted).
You hibernate Windows, and none of this changes.
Ah! So, it is a defect. Thanks for confirming what I already knew. (Or is it a defect? Well, not for the reason you just stated...maybe other reasons?)
The list goes on. You should NOT be using the same file system at the "same time" with two different operating systems, mounted twice. That is quite literally a braindead thing to do.
They didn't have two operating systems running at the same time using the file system. They hybernated...ran another OS...and restored from hybernation. If proper drivers were used (that is up for question), the state of the cache should be empty or the file system drivers were at fault.
Are they native Linux kernel drivers when booted under Linux? Were they wrapped Microsoft ones? Can't tell...doesn't seem like #2 (the preferred one)...so it may be the fault of the distro or the configuration and not Windows. Could go either way as far as I can tell.
I'd suggest you read about what "journaled filesystems" actually do: they keep the file *metadata* in a consistent recoverable state, by writing it twice: once at the start, in a journal area, and then once again, when it has been written into the final spot on the volume. This doesn't *not* apply to the regular data in the file! If a filesystem *did* do full journaling, even *that* would make the boneheaded assumption of being able to reboot to another system in the middle of hibernating the other one, doing anything other than perhaps read only operations, and then going back to the other one, bound to blow up the system that was hibernated in the first place, because of the *quite reasonable* assumption that the filesystem from one instant to the next won't be completely changed out from under the operating system that applications are running on.
Thus, NTFS, which has been a journaled filesystem since the beginning (available as of NT 3.1 back in 1993: I remember using it, personally, back then) does not have a flaw compared to EXT3, as it (EXT3) won't be any happier of an experience if you pull such a boneheaded manuever as modifying the filesystem in the middle of it being mounted within the context of a hibernation cycle.
Your point being? I was merely saying that Mac OS X is more fitting for your average computer user, mostly because, in my opinion, it's better designed and more usable than Windows XP. Reading back on my response now, I realize the person I was responding to said PC, but this is irrelevant to my statement.
-bytecoder
Why not? You are going to have to buy a new machine for Vista anyway, or lose a bunch of the cool new features.
OS X's sleep state though not as far reaching as hibernation responds better, with less hassles.
I have seen hibernate crash so hard that I had to unplug the power cord and then plug it back in on my dell to get the machine to restart. Also there is no visible difference to a machine in hibernation vs powered off. as such. As such someone could pull the plug and due system upgrades and when the machine comes back on be very confused.
Most people will only get Vista when it is preinstalled on ther new PC.
I don't see many people upgrading (?) to it. Especially if, as you say, they won't be able to use the new features and , as lots of people appear to be saying, the new features are not that good.
IMHO this means people will stick with the machine they have.
As long as you have a supported DX9 card, a decent processor, and a decent amount of RAM, you won't need to upgrade jack for Vista. Nice try at spreading the FUD.
Hibernate crashing is your/Dell's fault.
BTW ... who the f*ck would put a machine into hibernate in order to upgrade parts? If you do it, you deserve the trouble you get.
You're suggesting someone dump their PC, regardless of how much they've invested into it, and invest more money into a new Mac?
Investment? Is Windows a bank? ;-}
On a serious note...and a bit preachy...it's never a good idea to throw good money after bad.
The investment angle falsely focuses on potential loss...yet the 'investment' is already lost; the money and time has already been spent and isn't going to be refunded.
If future losses will be higher, it might be worth time to consider other options. The only question is what are those future losses and is there a way to avoid them and still gain any positive benifits?
I disagree completely. Unix is an excellent design and culture. Mac is an excellent design, culture, and idea. Although, the fan culture is the worst, but I mean the technical culture.
OS X is a horrible merge of Unix and Mac which merely shows off the incredible flexibility of Unix and the utter technical shallowness of GUI shells.
I wouldn't call OS X as a whole well designed. I would call its two main components excellent in their own scope while calling the glue that binds them weak as glue layers tend to be
.
People worship OS X too much. It's getting quite annoying.
FTA:
"Applications will be warned that a computer is entering sleep and have a second or two to save whatever they need to, but the programs won't get a say in whether the machine slumbers."
So, that means if the app is poorly written; then we loose data?
Not being negitive; I just would like an honest answer.
The new (and experimental) initng process is reported to give linux startup times of 20 seconds (and even less).
So in a year or so if you have to hibernate and then return to linux you do just that.
If you expect to use windows you poweroff instead.
It's not like you are losing much time :-)
(besides, if you choose to save your session at logoff all your open apps will reopen... could be useful...)
On a side note, I'm glad they acknowledged one of the big showstopper (and Windows puker) I had which made me switch to Linux. The fact that till today, you can not shutdown any Windows and expect it to actually shutdown every time.
I feared several time that my monitor was burned after this happening several time with Windows (since 98 to XP), leaving the monitor on the same image for several hours, sometimes days.
The hibernate thing was not working with my motherboard even though the feature was implemented. Once I changed the motherboard (because the old one died during the very hot 2003 summer in France) it worked, and I managed to keep a freshly installed WinXP (you bet it could never work and at best blue screened after I changed my motherboard, forced me to reinstall a fresh Windows, while the dual-boot Mandrake restarted without reinstalling) working at most for 30 days, using it roughly 3 hours a day (to play an online RPG). Then it crashed (or locked up) or became so slow it was unusable. Actually it still crashed after less than a week if you make the math, but that is consistant with my experience of WinXP.
Ookaze
I find Windows XP SP3 Unofficial DOWNLOAD page here http://windows.czweb.org/index.php?section=show_text_article&dir=wi...
BTW ... who the f*ck would put a machine into hibernate in order to upgrade parts? If you do it, you deserve the trouble you get.
----------
You must remember... Nothing bad would happen on Linux. Its absolutely perfect. Nothing can go wrong with Linux. And if something does, user inexperience is always the blame.



