1. What is the difference between a heavyweight and a lightweight process? Give an example of where heavyweight processes are appropriate, and one where lightweight processes are. In each example, make clear why one or the other is more suitable.
2. Show how a Unix or NACHOS shell would implement the following command line:
ls -l *.c > log
You need to show in your answer that you understand Unix or NACHOS process management (pick one or the other), and that you understand how the shell works. As a result, you should be explicit about all aspects pertaining to process management and the shell, and avoid lengthy discussions of peripheral topics. Be explicit about which system calls are used, where relevant information is kept, process states, who interprets what information, etc. Be explicit about where different parts of the command line (-l, the wildcard, etc.) are interpreted and/or handled. But don't explain how the command line is parsed, or how exactly the executable file is read into memory, once it is found.