Q) What is the maximum amount of memory any single process on Windows can address? Is this different to the maximum virtual memory for the system? How would this affect a system design?
A) On a 32 bit system the maximum amount of memory that can be addressed is 4GB (2 to the power of 32). I think that this is the same as the total virtual memory. Any system that requires large amounts of memory (such as a database) would need to consider these restrictions.
Q) What is the difference between an EXE and a DLL?
A) An EXE has an entry point and can be executed in isolation. A DLL (Dynamic Link Library) is a resource used by executables to provide modularised functionality.
Q) What is strong-typing versus weak-typing? Which is preferred? Why?
A) Strong-typing is where the “type” of variables is explicitly specified up-front, whereas weak-typing is where variable type is implied, usually through the operations performed on it (examples are using the variant type and performing Mathematical operations). Strong-typing is usually preferred so that a compiler/interpreter can spot potential errors early on. However if you are writing short scripts or make use of the flexibility of weak-typing, then it can sometimes by preferable to use it.
Well, we’re off to Geneva for 5 days now, so a long break from computing and time to reflect, read, talk, explore and enjoy!