Database System Concepts
Database System Concepts
7th Edition
ISBN: 9780078022159
Author: Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher: McGraw-Hill Education
expand_more
expand_more
format_list_bulleted
Bartleby Related Questions Icon
Related questions
Topic Video
Question
Write a C program that emulates the logic of the memory management unit (MMU). The following are the requirements for the program:
a.Prompt the user for a decimal number that will be used as the page size. Valid page sizes can either be 4095 (4K bytes) or 8191 (8K bytes).
b.Display the page size to the console as a 16-bit binary number that displays each binary digit as a 1 or 0 with the least significant bit on the right side of the output. Also display the page size to the console as a hexadecimal number.
c.Emulate a page table using a C array that supports the user specified page table size (you may create C arrays to handle a page table for both page sizes). The page table should represent a virtual memory address space of 1M bytes (0x000FFFFF) with a system that has a physical memory address size of 512K bytes (0x7FFFF), which is located at 0x00000000 and 0x0007FFFF. Populate the page table with the appropriate page table entries to support the specified page size and the physical memory address space. Page table entries do not need to support page faults, caching, or other attributes of a typical page able entry. The solution also does not need to support a TLB.
d.Prompt the user for a hexadecimal virtual memory address (between 0x00000000 and 0x000FFFFF), which will be converted to a physical memory address. Display to the console the input virtual memory address as a hexadecimal number.
e.Convert the virtual memory address to a physical memory address using the user specified page size and a populated page table. Display to the console the resultant physical memory address as a hexadecimal number. If the virtual memory address does not fit into the physical memory address simply display that the result is "Currently On Disk."
f.Run the program with at least 10 different virtual memory addresses to validate all functionality of your program, including addresses that can be mapped to physical memory and some that are on disk. Make sure you write your program in a modular fashion to eliminate redundant code.
I have been working on this for the past few days and haven't had any luck figuring it out. Please help!
Expert Solution
Check MarkThis question has been solved!
Explore an expertly crafted, step-by-step solution for a thorough understanding of key concepts.
bartleby
This is a popular solution
bartleby
Trending nowThis is a popular solution!
bartleby
Step by stepSolved in 3 steps with 1 images
Knowledge Booster
Background pattern image
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.Similar questions
- 8. Write a C++ program to read input the elements of an integer array of size 10 and find whether the array contains the number 10 at two adjacent indexes or not. Print "Found"/"Not Found" to display the result. Programming language: C++arrow_forwardplease answer with proper explanation and step by step solution. Solve in c++ pleasearrow_forward3. Create an 80x86 ASSEMBLY LANGUAGE program that define an array of doubleword numbers then read twovalues, first one indicates how many actual numbers will be in the array, and an integer n. Theprogram should display all of the numbers in the array that are greater than the number n. MUST PROVIDE FULL CODE AND SCREENSHOT OF OUTPUT PLEASEarrow_forward
- Example: The Problem Input File Using C programming language write a program that simulates a variant of the Tiny Machine Architecture. In this implementation memory (RAM) is split into Instruction Memory (IM) and Data Memory (DM). Your code must implement the basic instruction set architecture (ISA) of the Tiny Machine Architecture: //IN 5 //OUT 7 //STORE O //IN 5 //OUT 7 //STORE 1 //LOAD O //SUB 1 55 67 30 55 67 1 LOAD 2- ADD 3> STORE 4> SUB 5> IN 6> OUT 7> END 8> JMP 9> SKIPZ 31 10 41 30 //STORE O 67 //OUT 7 11 /LOAD 1 //OUT 7 //END 67 70 Output Specifications Each piece of the architecture must be accurately represented in your code (Instruction Register, Program Counter, Memory Address Registers, Instruction Memory, Data Memory, Memory Data Registers, and Accumulator). Data Memory will be represented by an integer array. Your Program Counter will begin pointing to the first instruction of the program. Your simulator should provide output according to the input file. Along with...arrow_forwardConsider the code below: main() { float b, *y; char c, *z; int a, X = &a; y = &b; z = &c; Given the memory representation of the variables of type int, char, and float: 1122 1123 1124 1125 1126 1127 1128 1129 1130 address 887.145 77 value b variable What is the correct value of the following items? (If the numerical value cannot be determined, type NA as your answer). z: *x: а: &c:arrow_forwardAssume a computer system has a main memory of 256 Bytes. The following is a memory byte-access trace history of a program run on this system. For example, as it is shown, the program first accesses memory address 0000 0000, and then it accesses memory address 0000 0001 and so on. Note the memory addresses are represented in binary: 00000000, 00000001, 00000010, 00000011, 00001000, 00010000, 00010001, 00000100, 00000101, 00000110, 00000111, 00001001, 00001010, 00001011, 00001100, 00001000, 00001001, 00001010, 00011100, 00011101.arrow_forward
arrow_back_ios
arrow_forward_ios
Recommended textbooks for you
- Text book imageDatabase System ConceptsComputer ScienceISBN:9780078022159Author:Abraham Silberschatz Professor, Henry F. Korth, S. SudarshanPublisher:McGraw-Hill EducationText book imageStarting Out with Python (4th Edition)Computer ScienceISBN:9780134444321Author:Tony GaddisPublisher:PEARSONText book imageDigital Fundamentals (11th Edition)Computer ScienceISBN:9780132737968Author:Thomas L. FloydPublisher:PEARSON
- Text book imageC How to Program (8th Edition)Computer ScienceISBN:9780133976892Author:Paul J. Deitel, Harvey DeitelPublisher:PEARSONText book imageDatabase Systems: Design, Implementation, & Manag...Computer ScienceISBN:9781337627900Author:Carlos Coronel, Steven MorrisPublisher:Cengage LearningText book imageProgrammable Logic ControllersComputer ScienceISBN:9780073373843Author:Frank D. PetruzellaPublisher:McGraw-Hill Education
Text book image
Database System Concepts
Computer Science
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:McGraw-Hill Education
Text book image
Starting Out with Python (4th Edition)
Computer Science
ISBN:9780134444321
Author:Tony Gaddis
Publisher:PEARSON
Text book image
Digital Fundamentals (11th Edition)
Computer Science
ISBN:9780132737968
Author:Thomas L. Floyd
Publisher:PEARSON
Text book image
C How to Program (8th Edition)
Computer Science
ISBN:9780133976892
Author:Paul J. Deitel, Harvey Deitel
Publisher:PEARSON
Text book image
Database Systems: Design, Implementation, & Manag...
Computer Science
ISBN:9781337627900
Author:Carlos Coronel, Steven Morris
Publisher:Cengage Learning
Text book image
Programmable Logic Controllers
Computer Science
ISBN:9780073373843
Author:Frank D. Petruzella
Publisher:McGraw-Hill Education