Problem Statement; Consider a multi-user operating system, such as UNIX. The memory allocator manages a finite number of consecutive memory blocks, which users may want to access. The memory allocator maintains a directory of which blocks are owned by which users. The following constraints must be observed. a) No block is owned by more than one user. b) A user may own more than one blocks. c) Some blocks might not be owned at all. d) Some users might not own any blocks.
- Write a state schema and an initialization schema for the memory allocator. 2. Write an operation schema for requesting a memory block by a user. Consider the following error conditions: a. – invalid user-id, b. – memory is exhausted. 3. Write an operation schema for releasing a memory block by a user. Consider the following error conditions a. – invalid user-id or memory block, b. – memory block to be released is not owned the user.