Question # 1 [Marks: 5]

Suppose a DLL file was loaded by a process P1 at time T0, 25 seconds later another process P2 linked the same (instance of) DLL file (while this instance of DLL was already loaded and linked with P1), After 45 seconds of P1 still another process P3 linked the same (instance of) DLL. Now after this, the Process P1 (that first time loaded DLL) has completed its task and wants to unload the DLL.

Now what will happen, i.e. either DLL file will be unloaded or NOT?, Give reasons for your answer, and also specify that what will happen to P2 and P3 (which are still using this instance) in case, the DLL is unloaded.

Question # 2 [Marks: 5+5]

Sponsored Links

1) Differentiate between two types of dynamic linking
2) Differentiate between virtual storage and physical memory

Note: your answer should be in following format


Question # 3 [Marks: 2.5+2.5]
Explain the following terms in your own words with at least one example of each:
1) dllexport
2) dllimport