1. Provide two programming examples of multithreading that would not improve performance over a single-threaded solution.
2. Describe the actions taken by a kernel to context switch between kernel-level threads.
3. What resources are used when a thread is created? How do they differ from those used when a process is created?