Due 1/20/2012 [start of section]
* Compiler
* Linker
* Loader
* Boot
module or boot ROM
1. What is the effect
of
having such a large number of registers on the operating system?
2. What additional
hardware
features you would recommend added to the design above.
3. What happens if
the hardware
designer also wants to add a 16-station pipeline into the CPU. How
would
that affect the context
switching overhead?
Program 1:
main()
{
val = 5;
if(fork()){
wait(&val);
val = WIFEXITSTATUS(val);
}
val++;
printf("%d\n", val);
return val;
}
Program 2:
main()
{
val = 5;
if(fork()){
wait(&val);
val = WIFEXITSTATUS(val);
}
else
exit(val);
val++;
printf("%d\n", val);
return val;
}