Android does have this feature. It is part of ashmem (Android shared memory) which is a patch to the Linux kernel. Under memory pressure the kernel can discard the pages and when the application goes back for them it is notified that they are gone.
I do understand encapsulation. I've been writing and maintaining code for nearly 20 years and I've seen how helpful it can be. If it was part of a class that was exposed as a public interface I would totally use getter and setter functions, if I absolutely had to. I find it is generally a lot better to set everything up front in the constructors and mutate the object state in response to verbs. Position->Move() rather than Position->setX().
You sound like you don't understand when to abandon encapsulation. I imagine you write Java or C# software and your class definitions contain 30 lines of useless code before you even start to write anything.
What kind of IDE do you use that can't quickly find every use of the x member variable and convert it to a function call?
In my experience this is a good way to hide your locking problems and avoid thinking about them. Which leads to deadlocks and excessively slow code. Because now if you want to modify 2,000 objects you have to lock each one individually instead of locking once and doing them in a batch. Then to fix that problem instead of rethinking the locking from the top and doing it correctly you get quick hacks like adding get_unlocked and set_unlocked to each object.
The other thing that rubbed me the wrong way here was public member variables. Since inlining and move semantics make getters and setters essentially free, there is no good reason to expose bare, public variables on anything but the simplest, most struct-like objects. The biggest source of weird, hard to trace bugs in our code at the game studio were often due to people modifying public members of other objects in unexpected ways or at unexpected times.
There's zero difference between a public getter/setter pair and a public variable. Encapsulation and future proofing the interface? In a game codebase? You'll never use it, and if you did need it the code editor can search and replace for you. Meanwhile, writing piles of getter/setter functions is a waste of time. Unexpected modification of public values doesn't get any better when its done through a setter function.
You need hardware support to securely encrypt a hibernation file. Otherwise it is a chicken and egg problem. Where do you get the key to decrypt the hibernation file? It would have to be in the hibernation file.
Either that or ask the user for the security code on resume. Which is valid but obnoxious.
120 GB is plenty of space. I ran Windows 7 plus some apps like Firefox and LibreOffice on a 30 GB SSD in 2010 so I know it can be done. My current laptop has 128 GB and is only half full.
In almost every case a previous property owner has already sold the mineral and water rights. Especially in the cities and suburbs. Or your legal jurisdiction may not recognize such rights.
Some places have no private water rights and all water is distributed via statute. For example, some land may come with access to a percentage of a stream, but that percentage cannot be sold and any contracts involving it automatically terminate when the property ownership transfers, and the controlling government can change it at will.
Since the Supremacy Clause is part of the original constitution and the 10th amendment is an amendment, the 10th amendment takes priority in any cases that conflict.
I don't know if this one does, but you should keep it in mind.
I have personal evidence that the default original install of Windows 7 on a Samsung Series 9 uses less power than a default install of Fedora 15.
Now, after I tweaked the Linux install using PowerTop and a rc.local script, Linux uses less power. This took some time and specialized knowledge of Linux systems.
So for an average computer user just installing an operating system, Windows 7 would use less power and have better battery life.
Highly compressible data only applies to Sandforce SSD controllers. I'm not aware of other controllers currently using compression. If you are planning to buy an SSD with a Sandforce controller then you should read the reviews on reliable sites that test using data of various realistic types. I like Anandtech myself.
SSD IOPS and RAID IOPS are quite different. A RAID made of hard disks may have a very high IOPS rating when it is using a high queue depth, but when using a queue depth of 1, its IOPS will be the same as a single drive. An SSD on the other hand, will have a very high IOPS rating even when using queue depth of 1. And most desktop software only issues requests at QD 1.
If you are planning to read 2 GB of images a single SSD will still beat a single HD. If you are using 6 Gbps SATA for the SSD you'd need at least 5 10K hard drives to match the transfer speeds.
And for compiling large sources, again the SSD wins because of how silly build tools are. As another commenter pointed out, current build software reads one include file, then the next one, then the next, etc. It reads one library file at a time. It reads or outputs one object file at a time. So it makes inefficient use of NCQ or RAID. Plus, some build tools seem to like to sync the build results to disk for no real reason (Visual Studio I am looking at you!).
Except for fonts and high resolution bitmaps, yes, the screen is addressed as doubled pixels. So what? Look at your screen and how much of it is covered in text and bitmap icons. Making those things look nicer is worth it.
The fonts on your Samsung will never look as nice as on a Retina display.
If you look at the way the Linux kernel uses macros combined with GCC extensions like typeof(x), it is obvious that they are actually writing templates. And many of their struct definitions reproduce inheritance and virtual method calls.
You could look at it as writing C++ code disguised as C.
I am still using a 80GB FusionIO ioXtreme I got back in 2010. I use it for my Visual Studio projects. After two years it is still going strong.
The administration tool reports lifetime physical write at 134,197 GiB. That's almost 134 terabytes. Reserve space is still at 100% so I guess it hasn't needed to remap anything yet either.
My boot drive is a 120 GB OCZ Vertex 3 which is now over a year old and still running fine.
I have to conclude that if you went through 6 SSDs, you were picking some crappy drives.
Note that I only have experience as a user of internet services.
If you have the choice at all, please go for wired distribution. Wireless only if the association cannot afford the wire pulls. Wireless is subject to so many interference sources and there's nothing you can really do to fix it if "The Internet is Down!" or more likely, the high-definition video feed starts buffering because of someone's microwave oven.
You may also be able to distribute over cable TV cables and cable modems. Either because you made a deal with a cable provider, or because you purchased the same equipment they use on the server-side. Could be tricky though, as I assume the cable TV people don't approve of competition and won't make it easy.
Speaking of high-definition video feeds, you may as well assume that at prime time hours at least half and maybe all of the units are watching HD Netflix, Hulu, Youtube or some other video source. That is 7 Mbps each, minimum, right there.
Now, if this was Windows I would be forced to reinstall. In Linux, I could switch to a shell prompt (i.e. Ctrl+Alt+F4 worked). With that I was able to add, remove and upgrade components/the system so the GUI login prompt worked again and I had a functional system
The fact that most people are ignorant of Window's recovery tools does not mean that the tools don't exist.
Get your Windows DVD and boot into the recovery console. From there you should be able to trigger a system recovery rollback. Tada! Fixed.
Android does have this feature. It is part of ashmem (Android shared memory) which is a patch to the Linux kernel. Under memory pressure the kernel can discard the pages and when the application goes back for them it is notified that they are gone.
I do understand encapsulation. I've been writing and maintaining code for nearly 20 years and I've seen how helpful it can be. If it was part of a class that was exposed as a public interface I would totally use getter and setter functions, if I absolutely had to. I find it is generally a lot better to set everything up front in the constructors and mutate the object state in response to verbs. Position->Move() rather than Position->setX().
You sound like you don't understand when to abandon encapsulation. I imagine you write Java or C# software and your class definitions contain 30 lines of useless code before you even start to write anything.
What kind of IDE do you use that can't quickly find every use of the x member variable and convert it to a function call?
In my experience this is a good way to hide your locking problems and avoid thinking about them. Which leads to deadlocks and excessively slow code. Because now if you want to modify 2,000 objects you have to lock each one individually instead of locking once and doing them in a batch. Then to fix that problem instead of rethinking the locking from the top and doing it correctly you get quick hacks like adding get_unlocked and set_unlocked to each object.
The other thing that rubbed me the wrong way here was public member variables. Since inlining and move semantics make getters and setters essentially free, there is no good reason to expose bare, public variables on anything but the simplest, most struct-like objects. The biggest source of weird, hard to trace bugs in our code at the game studio were often due to people modifying public members of other objects in unexpected ways or at unexpected times.
There's zero difference between a public getter/setter pair and a public variable. Encapsulation and future proofing the interface? In a game codebase? You'll never use it, and if you did need it the code editor can search and replace for you. Meanwhile, writing piles of getter/setter functions is a waste of time. Unexpected modification of public values doesn't get any better when its done through a setter function.
You need hardware support to securely encrypt a hibernation file. Otherwise it is a chicken and egg problem. Where do you get the key to decrypt the hibernation file? It would have to be in the hibernation file.
Either that or ask the user for the security code on resume. Which is valid but obnoxious.
Sure, why not?
It's still less stuff than you have to install to make Gnome Shell usable. I've got five plugins installed just to make it work vagely right.
120 GB is plenty of space. I ran Windows 7 plus some apps like Firefox and LibreOffice on a 30 GB SSD in 2010 so I know it can be done. My current laptop has 128 GB and is only half full.
Everyone seems to understand meters, centimeters, millimeters and kilometers; bytes, kilobytes and megabytes.
Yet when I try to describe the distance from Denver to Chicago in megameters my friends look at me funny.
I find it especially lame when astronomers describe distances in millions of kilometers. Are they too stupid to understand metric and use gigameters?
In almost every case a previous property owner has already sold the mineral and water rights. Especially in the cities and suburbs. Or your legal jurisdiction may not recognize such rights.
Some places have no private water rights and all water is distributed via statute. For example, some land may come with access to a percentage of a stream, but that percentage cannot be sold and any contracts involving it automatically terminate when the property ownership transfers, and the controlling government can change it at will.
Same with mineral rights in some places.
It is relevant because in 2007 running 64-bit didn't suck. The operating systems and drivers were all in good shape by then.
Unless of course you were using a Pentium 4 in which case most 64-bit operations were the same speed or slower than 32-bit.
I've been running 64-bit Windows and Linux since 2007. Where is this suck you speak of?
I suppose you could have been one of the sad few who used a Pentium 4 instead of the much better Athlon 64 chip.
Since the Supremacy Clause is part of the original constitution and the 10th amendment is an amendment, the 10th amendment takes priority in any cases that conflict.
I don't know if this one does, but you should keep it in mind.
I have personal evidence that the default original install of Windows 7 on a Samsung Series 9 uses less power than a default install of Fedora 15.
Now, after I tweaked the Linux install using PowerTop and a rc.local script, Linux uses less power. This took some time and specialized knowledge of Linux systems.
So for an average computer user just installing an operating system, Windows 7 would use less power and have better battery life.
Highly compressible data only applies to Sandforce SSD controllers. I'm not aware of other controllers currently using compression. If you are planning to buy an SSD with a Sandforce controller then you should read the reviews on reliable sites that test using data of various realistic types. I like Anandtech myself.
SSD IOPS and RAID IOPS are quite different. A RAID made of hard disks may have a very high IOPS rating when it is using a high queue depth, but when using a queue depth of 1, its IOPS will be the same as a single drive. An SSD on the other hand, will have a very high IOPS rating even when using queue depth of 1. And most desktop software only issues requests at QD 1.
If you are planning to read 2 GB of images a single SSD will still beat a single HD. If you are using 6 Gbps SATA for the SSD you'd need at least 5 10K hard drives to match the transfer speeds.
And for compiling large sources, again the SSD wins because of how silly build tools are. As another commenter pointed out, current build software reads one include file, then the next one, then the next, etc. It reads one library file at a time. It reads or outputs one object file at a time. So it makes inefficient use of NCQ or RAID. Plus, some build tools seem to like to sync the build results to disk for no real reason (Visual Studio I am looking at you!).
Are you claiming that holy water blessed by a level 10 Cleric is the same as that blessed by a level 1 Cleric?
Well, you're right. It's a level 1 divine spell with no level modifiers.
Have you looked at one in person? If you haven't, what is your opinion worth?
Personally, I think the Retina displays are amazing.
Except for fonts and high resolution bitmaps, yes, the screen is addressed as doubled pixels. So what? Look at your screen and how much of it is covered in text and bitmap icons. Making those things look nicer is worth it.
The fonts on your Samsung will never look as nice as on a Retina display.
I'm like that whenever I buy a new computer part. Sometimes it sits in the box for weeks.
If you look at the way the Linux kernel uses macros combined with GCC extensions like typeof(x), it is obvious that they are actually writing templates. And many of their struct definitions reproduce inheritance and virtual method calls.
You could look at it as writing C++ code disguised as C.
Oh that's so much better then. Now you're only subject to someone's guess at "reasonable."
I've heard many people calling for "reasonable" taxes on incomes over a million a year. "Reasonable" being 70%.
Because after all, no one needs to make more money than required to buy rice and gruel.
Yep.
The feds can now impose a 100% income tax, then give away "rebates" as long as whatever crazy rules they want are followed.
I am still using a 80GB FusionIO ioXtreme I got back in 2010. I use it for my Visual Studio projects. After two years it is still going strong.
The administration tool reports lifetime physical write at 134,197 GiB. That's almost 134 terabytes. Reserve space is still at 100% so I guess it hasn't needed to remap anything yet either.
My boot drive is a 120 GB OCZ Vertex 3 which is now over a year old and still running fine.
I have to conclude that if you went through 6 SSDs, you were picking some crappy drives.
Note that I only have experience as a user of internet services.
If you have the choice at all, please go for wired distribution. Wireless only if the association cannot afford the wire pulls. Wireless is subject to so many interference sources and there's nothing you can really do to fix it if "The Internet is Down!" or more likely, the high-definition video feed starts buffering because of someone's microwave oven.
You may also be able to distribute over cable TV cables and cable modems. Either because you made a deal with a cable provider, or because you purchased the same equipment they use on the server-side. Could be tricky though, as I assume the cable TV people don't approve of competition and won't make it easy.
Speaking of high-definition video feeds, you may as well assume that at prime time hours at least half and maybe all of the units are watching HD Netflix, Hulu, Youtube or some other video source. That is 7 Mbps each, minimum, right there.
A hundred times? It didn't work, but you kept trying? Heh.
I've used it 5 or 6 times and on Vista and Win-7 it has worked every time.
Now, if this was Windows I would be forced to reinstall. In Linux, I could switch to a shell prompt (i.e. Ctrl+Alt+F4 worked). With that I was able to add, remove and upgrade components/the system so the GUI login prompt worked again and I had a functional system
The fact that most people are ignorant of Window's recovery tools does not mean that the tools don't exist.
Get your Windows DVD and boot into the recovery console. From there you should be able to trigger a system recovery rollback. Tada! Fixed.