1). Describe a programming problem/task where a multithreade

1). Describe a programming problem/task where a multithreaded solution would be more efficient than a single-threaded one. Justify your answer. Do the same for the opposite (a task that would be more efficient to do as a singly-threaded process rather than multithreaded). 2). Implement the following built-in commands (Can be done in a step by step procedure in word) – exit: users can exit from the shell with the exit command. – cd: cd is a command to change directories. You will need to invoke the chdir system call. – path: path is a command not only to show the current pathname list, but also to append or remove several pathnames. You may keep a variable or data structure to deal with pathname list. This list helps searching for executables when users enter specific commands. path (without arguments) displays the pathnames currently set. It should show pathnames seperated by colons. ex) ‘/bin:/usr/bin’path + /foo/bar appends the pathname to the ‘path’ variable.path – /foo/bar removes the pathname from the ‘path’ variable. Submit the assignment in a Word Document.