Contact Me
23
comments
|
Add Comment
|
DLL files were Windows answer to Mac's old dual-fork file format.
A DLL (dynamic-link library) is Micro$oft's attempt to implement reentrant libraries, not a response to the Mac's dual-fork format.
Reentrant (shared) libraries are an important part of any multitasking OS, and certainly predate the Mac (which didn't even have multitasking, originally.)
The purpose is simple--why statically link the same functions to each process (loading the same code multiple times and using up memory), when the OS itself can load a single, reusable library instead?
OS X now maintains the resouces as seperate files within a package that represents the application. This is convenient in that all the support files for an application are usually within the application's package and out of view of the user. While there's still a registry of sorts, the link is maintained by the application's package itself. This is similar with most modern OS's (UNIX, Linux, etc.) now.
I'm certain that on a modern Mac (*nix style) the OS does the library management, not the app (the app simply requests the library.) If the library is already loaded (used by the OS or another app) the OS doesn't need to load it, it just supplies the linkage needed by the app.
Same with Linux, same with Windows, too.
Micro$oft pretty effectively messed up their original implementation--either by not allowing multiple library versions, or simply by not having applications check library versions when requesting them...
This was the major Windoz screw up--without an effective version system for libraries, only one copy of a reentrant library could exist. Installing older programs would overwrite newer library versions, crippling programs which needed the newer functionality. They tried to fix with the 'Registry,' which caused a whole new set of problems...
for(i=0;i>3;i++){
print i;
}
123the first statement init.s a variable. The second is a conditional, if it is false, the loop stops. The last is a statement that is run at the end of each loop cycle. The above is the same as:
i=0;
while(i<3){
print i;
i++;
}
i think.
let me check...
from wikipedia:
"Unlike many other kinds of loops, such as the while loop, the for loop is often distinguished by an explicit loop counter or loop variable. This allows the body of the for loop (the code that is being repeatedly executed) to know about the sequencing of each iteration. For loops are also typically used when the number of iterations is known before entering the loop."
http://en.wikipedia.org/wiki/For_loop
using the for loop in c++:
http://www.hitmill.com/programming/cpp/forLoop.htm
![]() |




















Vancouver Mini Maker Faire 2012
Rebuilding NordicTrack ski machine drive rollers
Looking for New Zealand-based Instructables authors for conference on August 27 in Wellington
Call to makers - Brighton Mini Maker Faire
Milk Crates - not as green as you think
TEDxBaghdad - Iraq - violence, dust storms and open sourced manufacturing
UK Mini Maker Faire - The Derby Silk Mill - New Poster to Share!







