"Even the way NTFS does it is to create a compressed file to hold the contents of the original file, like an archive. But if you'll notice, whenever you open the compressed file, NTFS will expand the whole compressed data into another special file until you close it."
Ever hear of "streaming"? They decompress one block at a time in memory as it's read it from the HD.
The only annoying part about compressed data is you can't do DMA transfers between your HD an NIC since the data first needs to be decompressed by the CPU.
My NIC supports filetransfer offloading and it actually takes less CPU to transfer 960mbit/sec over SMB2/IPv6 than it does to use iPerf/IPv6 at 960mbit/sec.
My CPU usage during SMB at my NIC's max speed is about 0.6%, while iPerf is about 2-3% cpu at the same speeds. Both times nearly all CPU usage is kernel mode, so I know it's all in the drivers.
"Virtualization is just another layer of software to exploit, the real problem is that it allows idiots who may have separated services onto physically separate devices due to incompatibilities with various bits of installed software on the machines, now they are once again back on the same hardware with shared memory..."
There are many real world scenarios that are currently only supported by virtulization. If all these people think virtulization is such a crutch, then they can solve the problem. Currently they have no answers and they only QQ
"Currently they can just pop in their knoppix CD or try Ubuntu with a Live CD; No expertise regarding BIOS settings required (normally)." Currently they can just run their favorite malware and screw their computer; No expertise regarding BIOS settings required (normally)
I use to be able to run any config I wanted, but now they have all of these "users" and stuff to help keep my machine more secure. Passwords, Users, encryption, tokens, all of this stuff is just trying to make things more confusing. I should be able to have any code run on any computer with full privileges.
It's a conspiracy I tells ya.
Security: What makes things confusing for end users End Users: Their own worst enemy
Booting from the Network, boot up memtest, booting up WinPE, booting up Spin Rite... All are not signed OSs.
The day IT can't use their tools on the computers is the day billions of dollars of computer orders will suddenly stop going to OEMs.
So, you are absolutely sure that OEMs are going to abandon enterprise customers because they didn't want to pay an extra $0.01 per computer to allow an option to disable secure boot? Think about that for a bit.
In other news, vaccinations don't help, fluoride is a mind control agent, Jews run everything, and OEMs will make secure boot mandatory on desktops/laptops/etc. You must have a very stressful life, being scared about everything.
That was based on my general understanding. I would not "quote" what I said..:p
And yes, it definitively "works", especially with apps that don't need more than your 32bit range. The OS can transparently handle a sum of more than 4GB of app allocated memory. So any single app may not use more than your standard 4GB, but all of the apps together could. It wouldn't be as fast as a native 64bit CPU, but it would be close enough.
If a single app needed more than 4GB, it would have to make use of special calls to properly let the OS know what it's trying to do.
A 64bit flat memory model is still best for large memory.
40bit addressing on a 32bit CPU takes a hefty performance penalty when switching 4GB "views" as the CPU can still only see 4GB at a time. Since the CPU can't see the memory as one flat memory range, it has to waste time copying certain things between these "views". It also increases the complexity of the code since any single app trying to use more than 4GB will have to manually manage these "views". So a pointer to a memory location may be valid in one view, but not another. Fun times.
You're rich. Try going to college making under $500/month while supporting your sick wife and having a panic attack from stress that almost ends your "college carrier" with only a year to go.
Sounds great until you think about how we have a generation of people who expect to have everything handed to them, have little pride or work ethic, and don't want to have any responsibility. You want these people homeschooling their children?
The whole issue is smarter people tend to reproduce less than below average people. We have a surplus of children with parents who don't care.
An interview with AMD and Intel a long while back talked about how they want to move away from implicit cache coherency because of the scaling with core issues that you're talking about.
One of the ideas at the time was for the programmer/OS to have a way to signal threads for when a memory location changes, this way it would be more like a multi-cast instead of a broadcast.
Also, cores would be connected more like a network where each core/node is connected only to it's immediate neighbors, so keeping related threads near each other will be important, otherwise your communications will have more hops.
I've have a few games that break 3GB regularly, but they are tweaked for low memory usage, so they have smaller textures/etc, but they have lots of objects. If they ever went with high res textures and high poly count models, 64bit may be needed.
You assume they provide the same quality of work. My statement assumes people care about quality.
I use to just buy Walmart pots/pans because they were only $25 vs the USA stuff for $100. Guess how many Walmart pots and pans have gone bad. More than enough to make up the 4xs price difference.
Paying ditch diggers and fillers is a free ride to a strong economy. They provide nothing of value, but their earned money trickles back into the economy.
If you "don't worry" about memory allocation/deallocation with "managed languages", then you're doing it wrong. If you want to be good at programming managed languages, then you need to understand how the framework handles allocation/deallocation and the best way to take advantage of that fact.
I see web programmers all the time who don't know about SQL paramterized inputs. Even though they are not SQL programmers, they need to know the basics since most web sites are consumers of DB data. It's like hiring a server admin who doesn't know anything about hard drives and memory.
While "you" may have had to learn SQL as an additional language at some point, that wasn't your specialty. A web programmer *should* know their specialty, and that includes properly securing a web page.
"I can relate in how hard it was for me to wrap my head around the idea of object-oriented programming"
I had a similar thing for me. Most "intro" OO books/tutors dumbed it down so much that I couldn't figure out wtf they were talking about. I eventually found an intermediate C++ book that explained how objects were just structs with methods/functions/etc that run relative to them, then it just clicked.
It was so stupidly simple.
I understand how CPUs/Memory/OSs work, so when I learn what's happening on the back end, it makes it so much easier for me to understand what to do on the front end.
I had the same problem with marshalling calls to the GUI thread. I got so confused with all the tutors. I eventually found an MSDN article on how the GUI thread works. One page of technical info and theory taught me so much better than tens of pages of dumbed down tutors and code examples.
By the time I got to multi-threading, thread pools, and async callbacks, I eventually learned to just google how they work before looking for tutorials. At least these things came naturally.
I can't learn when a tutor says "do it this way" without explaining "Why" and explaining "How" things work in the background. I don't like "black boxes" that magically do stuff.
I seem to learn quite differently from most people.
We're not complaining about the military budget, we're complaining about the military spending. War spending is not in the budget. Trillions have been spent on the war, but were not in the budget. Military war spending is about on par with Social Security, then you have budgeted spending, and it then costs more than SS.
My economics teacher made it fairly simple to understand. Paraphrase: The amount estimated by our own government for unbudgeted military spending for the first 5 years of the war would have been enough to cover University tuition and health care for every citizen for about 10 years, based on average tuition and insurance spending.
Money spent locally would have stayed in the economy, while money spent on explosives and fuel for tanks is money gone forever.
The multi-billion dollar Enterprise customers do use both WinPE and previous versions of Windows. It costs an OEM to have separate hardware lines, so they're better off doing the same for both business customers and residential, which means both will support any OS.
Unless you think Dell/Gateway/etc expect corps to stop purchasing hundred of millions in computers for the next decade because many of IT's tools will break with secure boot and they don't want to upgrade from XP/Vista.
That's not including all of the server lines because I'm sure quite a few people purchase server to run Linux/etc. OEMs are suddenly going to cut off those customers because they don't want to include an option to disable it?
So, spend 10 years at the bottom of the totem pole because I don't have a degree, go to school when I'm 30, then start back over at the bottom when I graduate 4 years later at 34?
This is about as good as a suggestion and putting your kids to get to work when they're 5, telling them to save up money to pay for private school.
"Even the way NTFS does it is to create a compressed file to hold the contents of the original file, like an archive. But if you'll notice, whenever you open the compressed file, NTFS will expand the whole compressed data into another special file until you close it."
Ever hear of "streaming"? They decompress one block at a time in memory as it's read it from the HD.
The only annoying part about compressed data is you can't do DMA transfers between your HD an NIC since the data first needs to be decompressed by the CPU.
My NIC supports filetransfer offloading and it actually takes less CPU to transfer 960mbit/sec over SMB2/IPv6 than it does to use iPerf/IPv6 at 960mbit/sec.
My CPU usage during SMB at my NIC's max speed is about 0.6%, while iPerf is about 2-3% cpu at the same speeds. Both times nearly all CPU usage is kernel mode, so I know it's all in the drivers.
It's not just about isolation, it's also about fail-over, live-migration, etc for any program without requiring the programs to understand.
Some of the biggest things virtualization can give is live-migrations and fail-over with no configuration.
"Virtualization is just another layer of software to exploit, the real problem is that it allows idiots who may have separated services onto physically separate devices due to incompatibilities with various bits of installed software on the machines, now they are once again back on the same hardware with shared memory ..."
There are many real world scenarios that are currently only supported by virtulization. If all these people think virtulization is such a crutch, then they can solve the problem. Currently they have no answers and they only QQ
"Currently they can just pop in their knoppix CD or try Ubuntu with a Live CD; No expertise regarding BIOS settings required (normally)."
Currently they can just run their favorite malware and screw their computer; No expertise regarding BIOS settings required (normally)
I use to be able to run any config I wanted, but now they have all of these "users" and stuff to help keep my machine more secure. Passwords, Users, encryption, tokens, all of this stuff is just trying to make things more confusing. I should be able to have any code run on any computer with full privileges.
It's a conspiracy I tells ya.
Security: What makes things confusing for end users
End Users: Their own worst enemy
ROFL. You must be new to IT.
Booting from the Network, boot up memtest, booting up WinPE, booting up Spin Rite... All are not signed OSs.
The day IT can't use their tools on the computers is the day billions of dollars of computer orders will suddenly stop going to OEMs.
So, you are absolutely sure that OEMs are going to abandon enterprise customers because they didn't want to pay an extra $0.01 per computer to allow an option to disable secure boot? Think about that for a bit.
In other news, vaccinations don't help, fluoride is a mind control agent, Jews run everything, and OEMs will make secure boot mandatory on desktops/laptops/etc. You must have a very stressful life, being scared about everything.
That was based on my general understanding. I would not "quote" what I said.. :p
And yes, it definitively "works", especially with apps that don't need more than your 32bit range. The OS can transparently handle a sum of more than 4GB of app allocated memory. So any single app may not use more than your standard 4GB, but all of the apps together could. It wouldn't be as fast as a native 64bit CPU, but it would be close enough.
If a single app needed more than 4GB, it would have to make use of special calls to properly let the OS know what it's trying to do.
A 64bit flat memory model is still best for large memory.
40bit addressing on a 32bit CPU takes a hefty performance penalty when switching 4GB "views" as the CPU can still only see 4GB at a time. Since the CPU can't see the memory as one flat memory range, it has to waste time copying certain things between these "views". It also increases the complexity of the code since any single app trying to use more than 4GB will have to manually manage these "views". So a pointer to a memory location may be valid in one view, but not another. Fun times.
Because they're too busy repaving perfectly good roads instead of putting that money back into education.
"on less than $1000/month income."
You're rich. Try going to college making under $500/month while supporting your sick wife and having a panic attack from stress that almost ends your "college carrier" with only a year to go.
Ahhh.. college...
I was the first in my family to go to college and there was no way I could have afforded it without loans.
There were 2 kids of jobs: full time 40+hrs/week and student jobs.
Student jobs are effectively filled until someone graduates and the spot opens up, then you have like 100 students applying for it.
I had two choices. Work a min wage job 40+hr/week(6am-6pm) and not have enough money to save up for college or not work and live off of student loans.
Sounds great until you think about how we have a generation of people who expect to have everything handed to them, have little pride or work ethic, and don't want to have any responsibility. You want these people homeschooling their children?
The whole issue is smarter people tend to reproduce less than below average people. We have a surplus of children with parents who don't care.
An interview with AMD and Intel a long while back talked about how they want to move away from implicit cache coherency because of the scaling with core issues that you're talking about.
One of the ideas at the time was for the programmer/OS to have a way to signal threads for when a memory location changes, this way it would be more like a multi-cast instead of a broadcast.
Also, cores would be connected more like a network where each core/node is connected only to it's immediate neighbors, so keeping related threads near each other will be important, otherwise your communications will have more hops.
I've have a few games that break 3GB regularly, but they are tweaked for low memory usage, so they have smaller textures/etc, but they have lots of objects. If they ever went with high res textures and high poly count models, 64bit may be needed.
You assume they provide the same quality of work. My statement assumes people care about quality.
I use to just buy Walmart pots/pans because they were only $25 vs the USA stuff for $100. Guess how many Walmart pots and pans have gone bad. More than enough to make up the 4xs price difference.
Paying ditch diggers and fillers is a free ride to a strong economy. They provide nothing of value, but their earned money trickles back into the economy.
Not optimizing your design from the beginning is another cause of having to re-write everything or shipping a sub-quality product.
If you "don't worry" about memory allocation/deallocation with "managed languages", then you're doing it wrong. If you want to be good at programming managed languages, then you need to understand how the framework handles allocation/deallocation and the best way to take advantage of that fact.
I think I know where Synerg1y was coming from.
I see web programmers all the time who don't know about SQL paramterized inputs. Even though they are not SQL programmers, they need to know the basics since most web sites are consumers of DB data. It's like hiring a server admin who doesn't know anything about hard drives and memory.
While "you" may have had to learn SQL as an additional language at some point, that wasn't your specialty. A web programmer *should* know their specialty, and that includes properly securing a web page.
"I can relate in how hard it was for me to wrap my head around the idea of object-oriented programming"
I had a similar thing for me. Most "intro" OO books/tutors dumbed it down so much that I couldn't figure out wtf they were talking about. I eventually found an intermediate C++ book that explained how objects were just structs with methods/functions/etc that run relative to them, then it just clicked.
It was so stupidly simple.
I understand how CPUs/Memory/OSs work, so when I learn what's happening on the back end, it makes it so much easier for me to understand what to do on the front end.
I had the same problem with marshalling calls to the GUI thread. I got so confused with all the tutors. I eventually found an MSDN article on how the GUI thread works. One page of technical info and theory taught me so much better than tens of pages of dumbed down tutors and code examples.
By the time I got to multi-threading, thread pools, and async callbacks, I eventually learned to just google how they work before looking for tutorials. At least these things came naturally.
I can't learn when a tutor says "do it this way" without explaining "Why" and explaining "How" things work in the background. I don't like "black boxes" that magically do stuff.
I seem to learn quite differently from most people.
Data Centers care about efficiency and processing density. Can open hardware currently compete?
We're not complaining about the military budget, we're complaining about the military spending. War spending is not in the budget. Trillions have been spent on the war, but were not in the budget. Military war spending is about on par with Social Security, then you have budgeted spending, and it then costs more than SS.
My economics teacher made it fairly simple to understand. Paraphrase: The amount estimated by our own government for unbudgeted military spending for the first 5 years of the war would have been enough to cover University tuition and health care for every citizen for about 10 years, based on average tuition and insurance spending.
Money spent locally would have stayed in the economy, while money spent on explosives and fuel for tanks is money gone forever.
The multi-billion dollar Enterprise customers do use both WinPE and previous versions of Windows. It costs an OEM to have separate hardware lines, so they're better off doing the same for both business customers and residential, which means both will support any OS.
Unless you think Dell/Gateway/etc expect corps to stop purchasing hundred of millions in computers for the next decade because many of IT's tools will break with secure boot and they don't want to upgrade from XP/Vista.
That's not including all of the server lines because I'm sure quite a few people purchase server to run Linux/etc. OEMs are suddenly going to cut off those customers because they don't want to include an option to disable it?
So, spend 10 years at the bottom of the totem pole because I don't have a degree, go to school when I'm 30, then start back over at the bottom when I graduate 4 years later at 34?
This is about as good as a suggestion and putting your kids to get to work when they're 5, telling them to save up money to pay for private school.
I hope it made you better voter :-)