change the default standy mode to 'S3' -- this will shut down the entire machine (including fans, etc.) but keep proviging a minimal power charge to the RAM in your machine so it won't lose its contents
It's probably worth noting that that minimal power is probably in the region of 4-6W. Don't discount it as trivial; it isn't.
Fortunately there are plenty of things we can do to reduce boot times. We can eliminate the RAM self test.
Gain: about 2-5 seconds Cost: potential mysterious crashes that the user won't understand. Admittedly, the BIOS RAM test is next to useless anyway; on the few occasions I've had RAM failures, it never picked up on them. So the RAM test goes. The BIOS still needs to scan memory to determine how much RAM is installed, but it can do this substantially faster than a test.
We can put the OS on a cartridge instead of on a hard drive.
Gain: probably about 10 seconds. Cost: approx £40 on the retail price of the machine
We can get rid of the spinning platters and go with completely solid state permanent storage.
Gain: substantially faster response time; same 10 second boot time reduction plus similar proportional app startup reductions Cost: slower maximum throughput makes I/O intensive applications slower; approx £60 per gigabyte additional hardware cost at retail
We can re-arrange things (Why have the hard drives spin up first, then have the user log in. That makes the user wait for the machine. Have the user log in, and while doing that you spin up the hard drives. Chances are high that the drives will be ready before the user finishes the login.).
Chances are pretty high that the drives are already spinning when the user starts logging in. This is a non-issue for 99% of users, so I'd suggest fixing it is a low priority.
Of course, to do most of these things, you would have to abandon the current PC platform. For example, it takes 20 seconds from poweron to playing on my room-mates XBox, whereas my PC takes two minutes from poweron to Ubuntu login screen.
That's not a hardware platform issue, though. The problem is largely one of software -- general purpose operating systems do a lot more than games console systems do. I don't know much about how XBox works, but I doubt it has more than a couple of MB of operating system code to load at startup. My XP box loads around 80MB of crap at startup. My Linux box is more like 120MB.
The problem is, all of your ideas have been tried.
For starters. . .
1. Stop building computers around crappy O.S.'s (An outside constraint if there ever was one!)
Problem with 1: most customers want Windows. Computers without it don't sell as well as computers with it.
2. Put the O.S. on a nice fast EPROM. All hardware drivers can similarly be put on secondary Flash-style memory chips and they would only change when the hardware is updated. Whatever needs to be loaded into faster memory can do so after start-up.
Problem with 2: the OS needs to be upgradeable, so you need either an EEPROM or Flash or something similar. There's probably in excess of 64MB of OS code that's accessed on startup on a modern computer (at least this much is loaded into memory by the time you get to a desktop; it may be more like 128MB or even more). This much EEPROM is prohibitively expensive (the best quote I get for it is c. £20000 -- I'm sure you can beat this by orders of magnitude, but even if it were only £200 it's still too expensive). For flash, you could do it for roughly £40, which is a significant price increment in the cost of a computer, but possibly worthwhile. But Flash is slow access - it'll still take 8 seconds just to transfer the data off that chip. That's not a lot better than a hard disk.
3. Don't power down by default! Put a big Lith-ion battery inside every box and keep the memory on-line, or partially on-line. When was the last time anybody powered off for more than a month? If you need to re-boot from scratch, make it a secondary option.
A typical modern PC's SDRAM will consume approximately 2000mA. Your big li-ion battery, which costs about £40, would provide about 10,000mAh, i.e. enough to keep that memory working for around 5 hours. Probably 10 hours, by the time you factor that memory that's only running a periodic refresh cycle rather than actively accessing its data is going to consume a little less power. The lifetime of the battery is approximately 500 recharge cycles, so you'll need to replace it after a couple of years.
Hibernation, as almost everyone's pointed out, works fine, unless you *need* to reboot for an install, crash, etc.
No, it doesn't. On my machine (with 384MB of RAM) hibernation takes nearly half as long as booting in the first place does. On a friend's laptop (512MB of RAM and a 5400RPM hard disk) it actually takes *longer*.
The point is, though, that you could use the same technique to store an OS image that doesn't have any apps running, and has a bunch of unused memory that doesn't need to be written out to disk, so there's less to load and the startup time is faster. You could probably get it down to 5-10 seconds if you did this. So why does nobody do this? Is there a system somewhere that does?
For some reason, the machine decided at that very exact instant... apparently _after_ I selected shutdown... that it would be a good idea to download and install a system update first!
Windows will install downloaded but uninstalled updates when you select shutdown, yes. You need to watch out for this; the design of the shutdown dialog changes when this is about to happen, and there's a little text link you can click to shut down without installing them. But I've chosen to install updates by mistake before now, too.
For instance, the wireless zero configuration service runs on every default XP SP2 install regardless of whether you have a wireless adapter or not.
You may want to disable it and use the software supplied with your wireless adapter even if you do. On my machine, WZC causes ~100ms delays during which no packets can be transmitted or received every time it refreshes its list of available networks, which happens once per minute whether you're looking at the list or not. Absolute hell if you're trying to use VOIP or play games. Annoying if you're using ssh or vnc.
A simple cp shouldn't be using tons of RAM; just enough to buffer the input while the destination drive is catching up.
The problem is that the kernel sees it not as "large file being copied" but "there's lots of disk activity, so let's increase the size of the disk cache... so let's find some victim to swap out!". Both Windows and Linux do this, although my experience has been that it's worse on Windows than on Linux (although that may be because Linux's paging implementation seems slightly more efficient than Windows').
You can control how much the Linux kernel tries to do this via the/proc/sys/vm/swappiness file. It defaults to 60% on my machine. I'm not sure if you can control the Windows equivalent behaviour, but I'd estimate that Windows is more like 80% swappy.
First, let's say that you upgrade some hardware. There will be no way for the OS to know that there's new hardware unless it goes through the hardware detection and configuration stages of bootup, which is what takes most of the time. Worse, if it doesn't do this, the system will probably just crash, as the memory image loaded will have the wrong set of drivers installed and they'll be pointing at the wrong set of hardware addresses.
I really have no idea why everyone here is spouting this bullshit. A PCI device probe takes at most a few thousand bus cycles. On a 33 MHz bus, that's almost zero time. A USB probe is a little slower, but still not problematically long. Hardware detection is a virtually instant feature. Initialisation may take a little longer, but still it's worth pointing out again: from load time to the time it starts executing user-mode code, a Linux kernel can boot in a couple of seconds on modest hardware.
Second, and this is more of a recent issue, there is a lot of work that's going into randomizing memory addresses to increase security. In the event of a security hole, randomized memory addresses make it far more difficult to take control of the machine as a hacker, virus, or worm can't use a hard-coded memory address during the attack. With a pre-built boot-up image, the memory addresses will not be randomized, which defeats a lot of the gain of this security benefit.
That is more of a problem. But addresses could be randomized on each full reboot (perhaps with a window that pops up suggesting the user performs a full reboot every month or so), and still achieve most of the benefits.
That said, you could just use hibernation on your computer. That is essentially the same thing as what you're asking for.
Not really. The poster is asking for optimised hibernation that doesn't remember his running apps, just the core system programs, so that the hibernation file is smaller and doesn't take as long to load. Yes, I'm sure he knows about hibernation. Presumably, he also doesn't want it to have to write the hibernation file each time he shuts his machine down, either.
Also, there are companies who are focusing on bootup speed. In fact, every major Linux distro has been focusing on it for the last year or two. It's unfortunately just not that easy to speed things up without sacrificing stability or functionality.
Which is presumably why my Debian system took twice as long to boot out of the box on the same hardware as the older SuSE image it replaced...? Linux distros are concentrating on bootup time because they have a problem -- modern Linux bootup times are spiralling out of control because it seems like every little feature somebody adds requires something new to start at boot time. Something more like Window's service control manager is required, so that such things can be started on-demand, not at boot time.
My brother got a fancy new tv recently and I was bothered by the boot time. It is only like 15 or 20 seconds, but I really didn't understand why the tv was able to show me a message explaining that it was busy turning on, but unable to show video. That kind of thing always leads me to wonder, is there some real technical limitation, is there some spaz that thinks it's fine(booting for 15 seconds is better than being a little blurry for 0.5 seconds or something equally stupid), or is the development process just broken?
True story: I worked on an application a couple of years back for a client who was going to distribute it to his clients. It was a Java program, so expecting long start-up times we had the designer put a splash window together for while it was starting. But, through one optimisation or another, I managed to get the start time down to about 2 seconds.
When we showed it to the client, his response was basically "there's not enough time to see the splash window; put a delay in there."
So the app shipped with a 5 second delay in the startup process so that his clients had enough time to see his fancy graphics.
This is followed by c. 20s for kde to start after I log in. This compares very similarly to XP time-to-desktop on the same machine, although XP has a longer bootup time and shorter login time.
The point is, though, the kernel is configured, ready and working after those first 3 seconds. If you put init=/bin/sh on the kernel command line, you can actually start working at that point.
The biggest problem of booting up like this is that the contents of memory and cpu registers isn't enough. The hardware has to be properly initialized as well. Since the internal state of the drivers indicates that has already been done, a consistent mechanism to force re-initialization of all hardware has to be in place after the system reloads the image. That might take as long as a normal boot does.
a) This isn't exactly hard -- hibernation already deals with it, so you just need to send all the drivers a "back from hibernation" signal on bootup. b) I doubt it'd take that long. Most hardware resets pretty quickly; in a few cases you'd have to upload what is typically called firmware to the device, and your disks will want to perform a seek recalibration, but you should be up and running pretty quickly. The Linux kernel on my machine can finish its hardware initialisation and load 'init' within about 2 seconds of loading from disc. It's loading all the standard processes that takes the time.
It's actually more than one but either way I bet M$ and everybody coming up with these copy protection schemes have to think to themselves..."We always lose this war against the Pirates and the Hackers. Why do we even bother?"
Because in this case, they've still achieved what they set out to do. Of course they knew that somebody would crack it. They probably knew exactly where the weak point was -- I was wondering only a couple of days ago if somebody had achieved it via this route yet, and I'm sure I'm not alone in knowing this was the way to do it. So if I knew it, with almost zero specialist knowledge of how Vista works, I'm sure MS knew it.
But the point of Activation and WGA and all that shit isn't to make Windows unpiratable. Frankly, MS don't want that. They know that their pirated userbase is huge, and that their huge userbase is what makes Windows valuable. They don't want to make running a pirated version of Windows hard enough to persuade all those users to switch -- whether they do it to Mac or to Linux or whatever.
What they do want to do is make it hard enough that a small proportion of them, the "soft core" so to speak, give up and buy a copy. Because running the crack is just too hard.
And in this case, I think they may have succeeded. The crack requires you to regularly run VMWare, with a virtual PC running an instance of Windows Server inside it -- that is going to use up a substantial chunk of disk space and of RAM. So people will need bigger disks and more memory to compensate. If I'm going to have to spend £50 upgrading my PC to run the crack, I'm going to consider spending £100 on a legit copy of the system I'm trying to crack instead. And some people might decide that's the better option.
Would you feel the same way if MS found a loophole in the GPL that allowed them to start lifting code wholesale?
MS has a certain motivation for developing software, and they protect it through technical and legal means.
You'll find that most people here are perfectly in favour of MS enforcing their rights via legal means (as long as they don't use strongarm tactics to do so... discovering somebody has unlicensed copies of windows because of a tip-off is one thing, requiring a contract that enables them to randomly audit a company's offices is another entirely).
We do object, on principle, to enforcement of legal rights by technological means. This is largely because the technological means are (a) inconvenient to legitimate users and (b) don't always work quite the way the should.
Windows Activation is inconvenient because it:
* Requires you to give information to MS that you might not want to give them, and which they have no legal right to. * Requires you to effectively get permission from MS if you want to upgrade your computer's hardware multiple times (or reinstall your copy of Windows on a different machine, if your existing machine fails, etc...) * Has made MS extend the Windows kernel so that it will not run versions of certain programs that haven't been signed by Microsoft. This means that I can no longer rip Windows apart, replace WINLOGON.EXE with a custom program that does what *I* want it to do, and not log in via an MS-approved process. Not that I've ever done that, but I kind-of liked the fact that I could if I wanted to (it's not as well documented as replacing 'init' on a Linux system, but there is information about how you would go about doing it out there -- but that's irrelevant now, only MS can do it).
If you don't agree with what they do, then fine, don't use their software, but how is pirating a copy of Vista any different from helping yourself to GPL code without giving anything back?
It isn't. But who said anything about pirating Windows? I have a legitimate copy of XP on my machine. Label stuck to the case, and all. Do I run WGA? Fuck no, I don't want to get involved with that; I don't want to get involved with something that will complain if it isn't able to validate my copy of Windows through some completely undocumented process that may or may not be correct for any given installation. Perhaps multiple people are using my activation code -- I have no way of knowing if anyone's flipped my laptop over and made a note of the number while I wasn't present. But then, despite having that activation code, I didn't use it last time I reinstalled Windows. Why? Well, the copy of Windows that was supplied with it only installs from a system restore disc that wipes all data on your hard disk. I didn't want to do that, so I installed from a regular retail edition of XP. Which I then had to hack to make activation work, because I'd already activated a machine with its key.
Another piece of software I use validates itself against an encrypted key that has a copy of my network interface's MAC associated with it. Fine, except for some reason the damned process occasionally causes the thing's driver to crash while its performing the validation. So of course I've hacked it, despite having a perfectly legal key.
It isn't only pirates who are concerned about Windows Activation, WGA and other copy-prevention mechanisms.
That's what they claim, but it's still, in reality, bullshit. You bought and paid for it -- with the store presenting it as a "sale" -- without reading or signing any kind of contract or license. Therefore, it is a sale and you own it.
What were you buying though? A box, with a disc in it, and if you're really lucky a manual or two. Did the store actually specifically state you'd have the right to use the software on the disc? They don't usually. And if they did, they were misrepresenting the sale, and you can take it up with them and get your money back. The store aren't allowed to sell you the right to use the software; their contract with M$ doesn't allow them to.
The idea of "licensing" it only becomes true because you believe it.
No, it becomes true because the courts decide to enforce it. And believe me, they do.
The DRM module doesn't block unsigned drivers, allowing injection of attack code.
Do you have a reference for that? Everything I've seen (e.g. this) suggests that the DRM module shuts down, prevent playing of licensed content, in the presence of unsigned drivers.
Anyone else notice that the descriptions on the top 6 results there seem to have been written as an editorial introduction to the pages, and not collected from the site metadata like descriptions in search results normally are?
Hmmm. That raises the question of whether the square metre in that 100-150 W per square metre figure is a static one, or one that tracks the sun. I'd always assumed it was a static one pointing in the optimal direction, but it would agree more with your figures if it were a sun-tracking square metre.
Wrong. In the US, a death in the commission of a felony is murder
Well, perhaps, but this happened in the UK, where not only is there no such concept as "felony", but murder is defined as intentionally killing someone. I think that definition is a good one, to be honest with you.
If I break the law, and somebody dies as a completely unpredictable result of that action (like in this case), I think I should be punished for the crime I committed, not the random and unfortunate consequence of it.
Assuming EMCA is a typo for ECMA, we're talking about the European Computer Manufacturers Association, basically the European version of ACM. Not exactly nobody, although you're right that they don't have quite the status of ANSI, ISO or IEEE. Probably about as important as IETF, though.
The main thing to note is that until recently they were mainly concerned with physical interoperability matters - defining data formats for interchange media and telecoms protocols, stuff that you don't normally hear about unless you're directly involved.
The analogy you make with your quotation doesn't quite fit the case, though.
A better one would be "Home Depot told me I could drop this hammer on my toes without hurting myself. They neglected to tell me I'd need safety boots." I still don't know if it's a valid cause to sue, but it stands some chance at least.
change the default standy mode to 'S3' -- this will shut down the entire machine (including fans, etc.) but keep proviging a minimal power charge to the RAM in your machine so it won't lose its contents
It's probably worth noting that that minimal power is probably in the region of 4-6W. Don't discount it as trivial; it isn't.
POST depends entirely on your BIOS. If you have a good BIOS and optimise the settings manually, you can get it down to a couple of seconds.
Fortunately there are plenty of things we can do to reduce boot times. We can eliminate the RAM self test.
Gain: about 2-5 seconds
Cost: potential mysterious crashes that the user won't understand. Admittedly, the BIOS RAM test is next to useless anyway; on the few occasions I've had RAM failures, it never picked up on them. So the RAM test goes. The BIOS still needs to scan memory to determine how much RAM is installed, but it can do this substantially faster than a test.
We can put the OS on a cartridge instead of on a hard drive.
Gain: probably about 10 seconds.
Cost: approx £40 on the retail price of the machine
We can get rid of the spinning platters and go with completely solid state permanent storage.
Gain: substantially faster response time; same 10 second boot time reduction plus similar proportional app startup reductions
Cost: slower maximum throughput makes I/O intensive applications slower; approx £60 per gigabyte additional hardware cost at retail
We can re-arrange things (Why have the hard drives spin up first, then have the user log in. That makes the user wait for the machine. Have the user log in, and while doing that you spin up the hard drives. Chances are high that the drives will be ready before the user finishes the login.).
Chances are pretty high that the drives are already spinning when the user starts logging in. This is a non-issue for 99% of users, so I'd suggest fixing it is a low priority.
Of course, to do most of these things, you would have to abandon the current PC platform. For example, it takes 20 seconds from poweron to playing on my room-mates XBox, whereas my PC takes two minutes from poweron to Ubuntu login screen.
That's not a hardware platform issue, though. The problem is largely one of software -- general purpose operating systems do a lot more than games console systems do. I don't know much about how XBox works, but I doubt it has more than a couple of MB of operating system code to load at startup. My XP box loads around 80MB of crap at startup. My Linux box is more like 120MB.
The problem is, all of your ideas have been tried.
For starters. . .
1. Stop building computers around crappy O.S.'s (An outside constraint if there ever was one!)
Problem with 1: most customers want Windows. Computers without it don't sell as well as computers with it.
2. Put the O.S. on a nice fast EPROM. All hardware drivers can similarly be put on secondary Flash-style memory chips and they would only change when the hardware is updated. Whatever needs to be loaded into faster memory can do so after start-up.
Problem with 2: the OS needs to be upgradeable, so you need either an EEPROM or Flash or something similar. There's probably in excess of 64MB of OS code that's accessed on startup on a modern computer (at least this much is loaded into memory by the time you get to a desktop; it may be more like 128MB or even more). This much EEPROM is prohibitively expensive (the best quote I get for it is c. £20000 -- I'm sure you can beat this by orders of magnitude, but even if it were only £200 it's still too expensive). For flash, you could do it for roughly £40, which is a significant price increment in the cost of a computer, but possibly worthwhile. But Flash is slow access - it'll still take 8 seconds just to transfer the data off that chip. That's not a lot better than a hard disk.
3. Don't power down by default! Put a big Lith-ion battery inside every box and keep the memory on-line, or partially on-line. When was the last time anybody powered off for more than a month? If you need to re-boot from scratch, make it a secondary option.
A typical modern PC's SDRAM will consume approximately 2000mA. Your big li-ion battery, which costs about £40, would provide about 10,000mAh, i.e. enough to keep that memory working for around 5 hours. Probably 10 hours, by the time you factor that memory that's only running a periodic refresh cycle rather than actively accessing its data is going to consume a little less power. The lifetime of the battery is approximately 500 recharge cycles, so you'll need to replace it after a couple of years.
Hibernation doesn't work on my system. I have 4GB of ram (only a subset of which is recognized by Windows) and WinXP chokes trying to hibernate.
Have a look through MS's knowledge base. I don't have the article number, but they have released a hotfix to fix this problem.
Still, with that much RAM I suspect hibernation will be slower than rebooting...
Hibernation, as almost everyone's pointed out, works fine, unless you *need* to reboot for an install, crash, etc.
No, it doesn't. On my machine (with 384MB of RAM) hibernation takes nearly half as long as booting in the first place does. On a friend's laptop (512MB of RAM and a 5400RPM hard disk) it actually takes *longer*.
The point is, though, that you could use the same technique to store an OS image that doesn't have any apps running, and has a bunch of unused memory that doesn't need to be written out to disk, so there's less to load and the startup time is faster. You could probably get it down to 5-10 seconds if you did this. So why does nobody do this? Is there a system somewhere that does?
For some reason, the machine decided at that very exact instant... apparently _after_ I selected shutdown... that it would be a good idea to download and install a system update first!
Windows will install downloaded but uninstalled updates when you select shutdown, yes. You need to watch out for this; the design of the shutdown dialog changes when this is about to happen, and there's a little text link you can click to shut down without installing them. But I've chosen to install updates by mistake before now, too.
For instance, the wireless zero configuration service runs on every default XP SP2 install regardless of whether you have a wireless adapter or not.
You may want to disable it and use the software supplied with your wireless adapter even if you do. On my machine, WZC causes ~100ms delays during which no packets can be transmitted or received every time it refreshes its list of available networks, which happens once per minute whether you're looking at the list or not. Absolute hell if you're trying to use VOIP or play games. Annoying if you're using ssh or vnc.
A simple cp shouldn't be using tons of RAM; just enough to buffer the input while the destination drive is catching up.
/proc/sys/vm/swappiness file. It defaults to 60% on my machine. I'm not sure if you can control the Windows equivalent behaviour, but I'd estimate that Windows is more like 80% swappy.
The problem is that the kernel sees it not as "large file being copied" but "there's lots of disk activity, so let's increase the size of the disk cache... so let's find some victim to swap out!". Both Windows and Linux do this, although my experience has been that it's worse on Windows than on Linux (although that may be because Linux's paging implementation seems slightly more efficient than Windows').
You can control how much the Linux kernel tries to do this via the
First, let's say that you upgrade some hardware. There will be no way for the OS to know that there's new hardware unless it goes through the hardware detection and configuration stages of bootup, which is what takes most of the time. Worse, if it doesn't do this, the system will probably just crash, as the memory image loaded will have the wrong set of drivers installed and they'll be pointing at the wrong set of hardware addresses.
I really have no idea why everyone here is spouting this bullshit. A PCI device probe takes at most a few thousand bus cycles. On a 33 MHz bus, that's almost zero time. A USB probe is a little slower, but still not problematically long. Hardware detection is a virtually instant feature. Initialisation may take a little longer, but still it's worth pointing out again: from load time to the time it starts executing user-mode code, a Linux kernel can boot in a couple of seconds on modest hardware.
Second, and this is more of a recent issue, there is a lot of work that's going into randomizing memory addresses to increase security. In the event of a security hole, randomized memory addresses make it far more difficult to take control of the machine as a hacker, virus, or worm can't use a hard-coded memory address during the attack. With a pre-built boot-up image, the memory addresses will not be randomized, which defeats a lot of the gain of this security benefit.
That is more of a problem. But addresses could be randomized on each full reboot (perhaps with a window that pops up suggesting the user performs a full reboot every month or so), and still achieve most of the benefits.
That said, you could just use hibernation on your computer. That is essentially the same thing as what you're asking for.
Not really. The poster is asking for optimised hibernation that doesn't remember his running apps, just the core system programs, so that the hibernation file is smaller and doesn't take as long to load. Yes, I'm sure he knows about hibernation. Presumably, he also doesn't want it to have to write the hibernation file each time he shuts his machine down, either.
Also, there are companies who are focusing on bootup speed. In fact, every major Linux distro has been focusing on it for the last year or two. It's unfortunately just not that easy to speed things up without sacrificing stability or functionality.
Which is presumably why my Debian system took twice as long to boot out of the box on the same hardware as the older SuSE image it replaced...? Linux distros are concentrating on bootup time because they have a problem -- modern Linux bootup times are spiralling out of control because it seems like every little feature somebody adds requires something new to start at boot time. Something more like Window's service control manager is required, so that such things can be started on-demand, not at boot time.
My brother got a fancy new tv recently and I was bothered by the boot time. It is only like 15 or 20 seconds, but I really didn't understand why the tv was able to show me a message explaining that it was busy turning on, but unable to show video. That kind of thing always leads me to wonder, is there some real technical limitation, is there some spaz that thinks it's fine(booting for 15 seconds is better than being a little blurry for 0.5 seconds or something equally stupid), or is the development process just broken?
True story: I worked on an application a couple of years back for a client who was going to distribute it to his clients. It was a Java program, so expecting long start-up times we had the designer put a splash window together for while it was starting. But, through one optimisation or another, I managed to get the start time down to about 2 seconds.
When we showed it to the client, his response was basically "there's not enough time to see the splash window; put a delay in there."
So the app shipped with a 5 second delay in the startup process so that his clients had enough time to see his fancy graphics.
Boot time is generally all PnP detection etc.
Linux on an embedded system configured for fast booting(without plug and play peripherals etc) can boot in 2 seconds or so.
Profile of time to start Linux on my desktop system:
~1s - loading kernel from disk
~2s - kernel bootup (including hardware detection & init)
~20s - loading default processes (init, fsck, syslog, mount, network config, various daemons)
~5s - starting kdm & xf86
This is followed by c. 20s for kde to start after I log in. This compares very similarly to XP time-to-desktop on the same machine, although XP has a longer bootup time and shorter login time.
The point is, though, the kernel is configured, ready and working after those first 3 seconds. If you put init=/bin/sh on the kernel command line, you can actually start working at that point.
If your only concerned about fast startups, why don't you just install Windows ME.
Or linux with 'init=/bin/sh'. Only takes a couple of seconds on my machine.
The biggest problem of booting up like this is that the contents of memory and cpu registers isn't enough. The hardware has to be properly initialized as well. Since the internal state of the drivers indicates that has already been done, a consistent mechanism to force re-initialization of all hardware has to be in place after the system reloads the image. That might take as long as a normal boot does.
a) This isn't exactly hard -- hibernation already deals with it, so you just need to send all the drivers a "back from hibernation" signal on bootup.
b) I doubt it'd take that long. Most hardware resets pretty quickly; in a few cases you'd have to upload what is typically called firmware to the device, and your disks will want to perform a seek recalibration, but you should be up and running pretty quickly. The Linux kernel on my machine can finish its hardware initialisation and load 'init' within about 2 seconds of loading from disc. It's loading all the standard processes that takes the time.
It's actually more than one but either way I bet M$ and everybody coming up with these copy protection schemes have to think to themselves..."We always lose this war against the Pirates and the Hackers. Why do we even bother?"
Because in this case, they've still achieved what they set out to do. Of course they knew that somebody would crack it. They probably knew exactly where the weak point was -- I was wondering only a couple of days ago if somebody had achieved it via this route yet, and I'm sure I'm not alone in knowing this was the way to do it. So if I knew it, with almost zero specialist knowledge of how Vista works, I'm sure MS knew it.
But the point of Activation and WGA and all that shit isn't to make Windows unpiratable. Frankly, MS don't want that. They know that their pirated userbase is huge, and that their huge userbase is what makes Windows valuable. They don't want to make running a pirated version of Windows hard enough to persuade all those users to switch -- whether they do it to Mac or to Linux or whatever.
What they do want to do is make it hard enough that a small proportion of them, the "soft core" so to speak, give up and buy a copy. Because running the crack is just too hard.
And in this case, I think they may have succeeded. The crack requires you to regularly run VMWare, with a virtual PC running an instance of Windows Server inside it -- that is going to use up a substantial chunk of disk space and of RAM. So people will need bigger disks and more memory to compensate. If I'm going to have to spend £50 upgrading my PC to run the crack, I'm going to consider spending £100 on a legit copy of the system I'm trying to crack instead. And some people might decide that's the better option.
Now... if you can hack the revocation part of Vista itself, you'll have the other 50% of a full Vista hack.
Not quite -- you still need to find a way of disabling WGA without preventing updates from working.
Would you feel the same way if MS found a loophole in the GPL that allowed them to start lifting code wholesale?
MS has a certain motivation for developing software, and they protect it through technical and legal means.
You'll find that most people here are perfectly in favour of MS enforcing their rights via legal means (as long as they don't use strongarm tactics to do so... discovering somebody has unlicensed copies of windows because of a tip-off is one thing, requiring a contract that enables them to randomly audit a company's offices is another entirely).
We do object, on principle, to enforcement of legal rights by technological means. This is largely because the technological means are (a) inconvenient to legitimate users and (b) don't always work quite the way the should.
Windows Activation is inconvenient because it:
* Requires you to give information to MS that you might not want to give them, and which they have no legal right to.
* Requires you to effectively get permission from MS if you want to upgrade your computer's hardware multiple times (or reinstall your copy of Windows on a different machine, if your existing machine fails, etc...)
* Has made MS extend the Windows kernel so that it will not run versions of certain programs that haven't been signed by Microsoft. This means that I can no longer rip Windows apart, replace WINLOGON.EXE with a custom program that does what *I* want it to do, and not log in via an MS-approved process. Not that I've ever done that, but I kind-of liked the fact that I could if I wanted to (it's not as well documented as replacing 'init' on a Linux system, but there is information about how you would go about doing it out there -- but that's irrelevant now, only MS can do it).
If you don't agree with what they do, then fine, don't use their software, but how is pirating a copy of Vista any different from helping yourself to GPL code without giving anything back?
It isn't. But who said anything about pirating Windows? I have a legitimate copy of XP on my machine. Label stuck to the case, and all. Do I run WGA? Fuck no, I don't want to get involved with that; I don't want to get involved with something that will complain if it isn't able to validate my copy of Windows through some completely undocumented process that may or may not be correct for any given installation. Perhaps multiple people are using my activation code -- I have no way of knowing if anyone's flipped my laptop over and made a note of the number while I wasn't present. But then, despite having that activation code, I didn't use it last time I reinstalled Windows. Why? Well, the copy of Windows that was supplied with it only installs from a system restore disc that wipes all data on your hard disk. I didn't want to do that, so I installed from a regular retail edition of XP. Which I then had to hack to make activation work, because I'd already activated a machine with its key.
Another piece of software I use validates itself against an encrypted key that has a copy of my network interface's MAC associated with it. Fine, except for some reason the damned process occasionally causes the thing's driver to crash while its performing the validation. So of course I've hacked it, despite having a perfectly legal key.
It isn't only pirates who are concerned about Windows Activation, WGA and other copy-prevention mechanisms.
That's what they claim, but it's still, in reality, bullshit. You bought and paid for it -- with the store presenting it as a "sale" -- without reading or signing any kind of contract or license. Therefore, it is a sale and you own it.
What were you buying though? A box, with a disc in it, and if you're really lucky a manual or two. Did the store actually specifically state you'd have the right to use the software on the disc? They don't usually. And if they did, they were misrepresenting the sale, and you can take it up with them and get your money back. The store aren't allowed to sell you the right to use the software; their contract with M$ doesn't allow them to.
The idea of "licensing" it only becomes true because you believe it.
No, it becomes true because the courts decide to enforce it. And believe me, they do.
The DRM module doesn't block unsigned drivers, allowing injection of attack code.
Do you have a reference for that? Everything I've seen (e.g. this) suggests that the DRM module shuts down, prevent playing of licensed content, in the presence of unsigned drivers.
Anyone else notice that the descriptions on the top 6 results there seem to have been written as an editorial introduction to the pages, and not collected from the site metadata like descriptions in search results normally are?
Any ideas where those descriptions came from?
Hmmm. That raises the question of whether the square metre in that 100-150 W per square metre figure is a static one, or one that tracks the sun. I'd always assumed it was a static one pointing in the optimal direction, but it would agree more with your figures if it were a sun-tracking square metre.
Wrong. In the US, a death in the commission of a felony is murder
Well, perhaps, but this happened in the UK, where not only is there no such concept as "felony", but murder is defined as intentionally killing someone. I think that definition is a good one, to be honest with you.
If I break the law, and somebody dies as a completely unpredictable result of that action (like in this case), I think I should be punished for the crime I committed, not the random and unfortunate consequence of it.
Is it just me who thinks that sentence makes more sense if you append "whose first record's copyright will expire in two years" to it?
Assuming EMCA is a typo for ECMA, we're talking about the European Computer Manufacturers Association, basically the European version of ACM. Not exactly nobody, although you're right that they don't have quite the status of ANSI, ISO or IEEE. Probably about as important as IETF, though.
The main thing to note is that until recently they were mainly concerned with physical interoperability matters - defining data formats for interchange media and telecoms protocols, stuff that you don't normally hear about unless you're directly involved.
The analogy you make with your quotation doesn't quite fit the case, though.
A better one would be "Home Depot told me I could drop this hammer on my toes without hurting myself. They neglected to tell me I'd need safety boots." I still don't know if it's a valid cause to sue, but it stands some chance at least.