Most V8's have a roof to keep out the rain and cold, A/C to keep out the heat, don't require helmets or other safety gear and generally sacrifice themselves to save the occupants in a crash. They can also carry 100's of kg of luggage and 4+ people.
PAE has a 64GB limit, as it only adds another 4 bits to the 32 address bits. 36 bits = 64GB address space. The OS needs to support it. Individual processes are still restricted to 32 bits of virtual address space. Windows generally has a 2GB limit, with the upper 2GB reserved for the kernel address space. It can be changed to 3GB but you could run in to problems.
The limits in the Atom CPU's are physical limits. Their memory controllers can't handle any more.
Even with PAE, the address space that each process has is still full of ranges it can't use. Blocks of address space are reserved for hardware and drivers. I used to run in to that problem all the time, as some applications like Java require contiguous blocks of memory for their heap space. 32bit windows usually means you're limited to around 1.2GB to 1.4GB depending on the hardware on your computer. It's usually video cards that chew up the address space.
There are processors with different addresses buses for code and data, but they're not very popular.
Just because a CPU is 32 bit, doesn't mean it can't address more than 4GB. PAE has been around for a long time. None of those Atom CPU's can even address 3GB though. Some are limited to 2GB and others 2.4GB
You could install 8GB of RAM on an 32bit Pentium 4 if you had a 955X chipset. Pentium 3's could run 8GB of RAM with the right motherboard.
There are also a bunch of 64bit Atom CPU's (that will still run Windows 10) that only support 2GB of RAM. Some are less than a year old.
What is your aversion to final variables? It makes a lambda expression thread safe for a start, no synchronisation needed. That means stream operations are free to run parallel tasks, etc.
The way an anonymous class works is the compiler generates a class for with fields for all the variables used in it and passes the values to those field via a constructor.
The effect of that is if you reassigned that variable in the anonymous class, it would be reassigning the field in the instance of the generated class, not local variable. It's a restriction enforced by the compiler to make the language better.
and I'm pretty sure if you use lambdas, they still need to be final
When they introduced lambdas they introduced the concept of "effectively final" which is a variable that is only assigned once.
Since lamba expressions were added the compiler can determine if a variable is effectively final so you don't need to declare everything as final. It makes perfect sense, btw. As soon as a variable can escape the scope it is defined in, it must be final because each scope it is referenced in, it's a different variable with same name. Nobody wants to deal with a local variable being changed by another thread between two adjacent statements.
Yeah... but I never met one. And don't make my loop variables final. To much typing work, visual clutter, line noise, it hurts my eyes:D
I don't usually either, but I have worked with some real winners over the years. Think 1000+ line methods and nested if statements so deep you can't see the start of the line and the first non-whitespace character on the screen at the same time.
Australia, home of the ADR designed to boost local car manufacturing. Didn't work in the end, now all you've got is expensive cars to show for it by cutting out the jap imports.
Android is dropping to lower-res/fewer colors to accelerate the transition
Or did it swap the high-res texture for a low-res one to save memory while it was not in use?
GPU's have been able to do 32bit acceleration for a long time.
Semi-OK gaming video cards that didn't support DirectX 9 couldn't run Vista Aero because it used the DirectX 9 API, required hardware based Pixel Shader 2.0 (not emulated in the driver) and at least 128MB of RAM. Not because of bit-depth.
I don't have window tearing issues on this laptop I'm using. Windows 8.1. Even with two of the monitors connected via a docking station connected to a single USB 3 port.
I'm glad you've volunteers to help with their concurrency programming. Good luck, it's not easy.
Usually at some point, access to shared resources needs to be controlled. There are easy ways to do it and there are hard ways. Easy isn't fast, but it's predictable and less error-prone.
So why is it fair that non-cyclists have to pay for bike paths they can't use?
They're not passing you because they're busy filming you to post it on youtube and have a laugh at your expense.
Most V8's have a roof to keep out the rain and cold, A/C to keep out the heat, don't require helmets or other safety gear and generally sacrifice themselves to save the occupants in a crash. They can also carry 100's of kg of luggage and 4+ people.
PAE has a 64GB limit, as it only adds another 4 bits to the 32 address bits. 36 bits = 64GB address space.
The OS needs to support it.
Individual processes are still restricted to 32 bits of virtual address space. Windows generally has a 2GB limit, with the upper 2GB reserved for the kernel address space. It can be changed to 3GB but you could run in to problems.
The limits in the Atom CPU's are physical limits. Their memory controllers can't handle any more.
Even with PAE, the address space that each process has is still full of ranges it can't use. Blocks of address space are reserved for hardware and drivers.
I used to run in to that problem all the time, as some applications like Java require contiguous blocks of memory for their heap space. 32bit windows usually means you're limited to around 1.2GB to 1.4GB depending on the hardware on your computer. It's usually video cards that chew up the address space.
There are processors with different addresses buses for code and data, but they're not very popular.
and if your 32bit single process app running on a 64bit OS needs a larger memory space you're still out of luck.
They still support other 32bit Atom CPU's
Not being able to read any text would be a pretty serious issue.
Just because a CPU is 32 bit, doesn't mean it can't address more than 4GB. PAE has been around for a long time.
None of those Atom CPU's can even address 3GB though. Some are limited to 2GB and others 2.4GB
You could install 8GB of RAM on an 32bit Pentium 4 if you had a 955X chipset.
Pentium 3's could run 8GB of RAM with the right motherboard.
There are also a bunch of 64bit Atom CPU's (that will still run Windows 10) that only support 2GB of RAM. Some are less than a year old.
You're beyond help.
What is your aversion to final variables?
It makes a lambda expression thread safe for a start, no synchronisation needed. That means stream operations are free to run parallel tasks, etc.
The way an anonymous class works is the compiler generates a class for with fields for all the variables used in it and passes the values to those field via a constructor.
The effect of that is if you reassigned that variable in the anonymous class, it would be reassigning the field in the instance of the generated class, not local variable.
It's a restriction enforced by the compiler to make the language better.
and I'm pretty sure if you use lambdas, they still need to be final
When they introduced lambdas they introduced the concept of "effectively final" which is a variable that is only assigned once.
Since lamba expressions were added the compiler can determine if a variable is effectively final so you don't need to declare everything as final.
It makes perfect sense, btw. As soon as a variable can escape the scope it is defined in, it must be final because each scope it is referenced in, it's a different variable with same name. Nobody wants to deal with a local variable being changed by another thread between two adjacent statements.
Yeah ... but I never met one. And don't make my loop variables final. To much typing work, visual clutter, line noise, it hurts my eyes :D
I don't usually either, but I have worked with some real winners over the years. Think 1000+ line methods and nested if statements so deep you can't see the start of the line and the first non-whitespace character on the screen at the same time.
Chinese cars use a lot more LiFePO4 batteries which are a lot safer than other types of lithium batteries
Australia, home of the ADR designed to boost local car manufacturing. Didn't work in the end, now all you've got is expensive cars to show for it by cutting out the jap imports.
Some people reassign the loop variables. declaring it final makes the compiler stop them from being stupid.
In old versions of Java it was also a requirement to pass a variable into an anonymous inner class.
You mean don't buy a laptop or smartphone?
itemList.forEach( o -> {...});
for (final Item item : itemList) { ....
}
Iterator itr = itemList.iterator();
while (itr.hasNext()) {
final Item item = itr.next();
}
It's "c out" for those who understand what the statement does and "kowt" for those who don't bother to think about what it means.
yeah, 'cause "plus plus i" is universal.
Congratulations on blowing your own horn?
News flash: Microsoft can afford the smartest people on the planet. The smartest people on the planet also find this stuff hard.
ps: I write software for a living
Android is dropping to lower-res/fewer colors to accelerate the transition
Or did it swap the high-res texture for a low-res one to save memory while it was not in use?
GPU's have been able to do 32bit acceleration for a long time.
Semi-OK gaming video cards that didn't support DirectX 9 couldn't run Vista Aero because it used the DirectX 9 API, required hardware based Pixel Shader 2.0 (not emulated in the driver) and at least 128MB of RAM. Not because of bit-depth.
The world should stick to metric.
200uS is one five thousandth of a second
I don't have window tearing issues on this laptop I'm using.
Windows 8.1. Even with two of the monitors connected via a docking station connected to a single USB 3 port.
I'm glad you've volunteers to help with their concurrency programming. Good luck, it's not easy.
Usually at some point, access to shared resources needs to be controlled. There are easy ways to do it and there are hard ways. Easy isn't fast, but it's predictable and less error-prone.