3.3 Original version of Apple's mobile iOS operating system provied no means of concurrent processing. Discuss three major complications that concurrent processing adds to an operating system.
答案:此问题不太熟悉, 应该是问向操作系统中加入并发处理后的三个主要并发症是什么。 在网上搜索了一下, 得到了一个答案。
1. The OS has to keep track of the main memory address space allocated to each process so that a process does not affect or harm other processes data. This is a necessay , for example, a virus may try to destroy or modify other process data.
操作系统必须追踪分配给每一个进程的主要内存地址空间, 因此一个进程就不会去影响或者损坏其他进程的数据。 这是必要的, 例如, 一个病毒会试图破坏和修改其他进程的数据。
2. Switching from one process to another process leads to time overhead(时间开销), this requires storing the current register values and loading the register values of the next process from its PCB(program Control Block).
从一个进程切换到另一个进程的时候会导致时间开销, 并需要存储当前进程的寄存器值并且从PCB中读取下一个进程的寄存器的值。
3. If a running process requires large space in memory then other processs needs to be dumped back to hard disk which again leads to time overhead.
如果一个正在运行的进程需要更大的内存空间, 那么因其他进程就需要被放回硬盘也会导致时间开销。
another answer form internet:
1.A method of time sharing must be implemented to allow each of several processes to have access to the system. This method involves the preemption of processes that do not voluntarily give up the CPU(by using a system call, for instance) and the kernel being reentrant(so more than one process may be executing kernel code concurrently).
2.Processes and system resources must have protections and must be protected from each other. Any given process must be limited in the amount of memory it can user and the operations it can perform on devices like disks.
3.Care must be taken in the kernel to prevent deadlocks between processes, so processes aren't wating for each other's allocated resources.