Operating System, Memory Allocation Project
Order ID 53563633773 Type Essay Writer Level Masters Style APA Sources/References 4 Perfect Number of Pages to Order 5-10 Pages Description/Paper Instructions
Operating System, Memory Allocation Project
The goal of this project is to practice the address translation that is usually performed by the hardware and practice the management of a page table. In this assignment, you are asked to design a simulator that simulates memory management inside the user space.
We consider a tiny computer system (even much smaller than Raspberry Pi) that supports up to 1KB physical memory and 12-bit virtual addresses. The size of a virtual page and a physical page is 128 bytes.
Part1: 40 points
Assume that the page table of the process is shown in the following diagram.
Note that only a few entries of the process’ page table are present, as we will only use the first seven entries in part1. Write a program called mempart1.c for this part. The program will take only one parameter, the input sequence filename, which contains a sequence of virtual memory accesses (addresses). Here, each address is stored as 8 bytes (unsigned long type). Your program should read and analyze each virtual address and translate it into the corresponding physical address base on the given page table (shown in the above diagram). Note: to simplify your implementation, you may hard code the page-to-frame mapping in your program. In the input file, each memory address is stored in a binary format. You should not attempt to to view the file by the command “cat”, “less”, or any text editing application. Instead, you may use “hexdump input_file” command to view the binary contents. You can test your program with the given simple test file
, where the first address should be 0x00000044, and the second one should be 0x00000224. Physical address for these two virtual addresses should be 0x144 and 0x01A4. For each address in the input file, you will use the above given page table to perform the address translation, and generate a corresponding physical address. You will output the translated physical addresses into an output file, named “part1output”. This output file should have a similar format to the given “part1test” file, i.e., each physical address should use 8 bytes (as an unsigned long value). In this assignment, we represent each virtual and physical address using 64-bit (8 bytes) to enable the program to be more general. Once you test your program correctly with the above simple test file, which contains only 8 virtual addresses, you should use this larger input file as the input file and place all the physical addresses in another file called “part1out”. Then you can use the md5sum utility to compute the corresponding checksum, via running “md5sum part1out”, and you only need to write the checksum into a file called “p1result.txt”.
Part2: 50 Points
In this part, you will design the page table and deal with allocations of physical machines on the same machine as discussed above. You will create two new source files: phyframe.c and pagetable.c, as well as a new main program, named “mempart2.c”, plus any necessary header files. Here, phyframe.c is used to manage the physical frames, while pagetable.c will hold all functions that manage the page table for the process. For this part, we will also assume the first physical frame is reserved for the OS, while other framess are initially available for the process. To manage physical frames, you will use a simple physical page allocation scheme: You will allocate each physical page in the order of frame number initially, starting from 1, 2, 3, …. If physical frames are available, you will always allocate from these available frames at first. Once there are no free physical frames, you will need to use LRU page replacement policy to choose a physical frame to be replaced, which means the least recently used page will be the first to be evicted. Note that once a frame is selected to be replaced, you should do two things: First, you should update the old page table entry such that no two virtual pages are pointing to the same physical frame. In reality, it is better to quickly locate which page table entry is actually pointing to this physical frame, typically called as “reverse mapping”. However, you may search the whole page table of all active processes (one process in the assignment) to find out this, with significant performance overhead.
Second, you should change the page table entry of the target page to point to the frame. If you are using the “reverse mapping” mechanism, you should also set up the reverse mapping correctly. Note: you can use any mechanism discussed in the class to implement the strict LRU policy, such as counter mechanism, but not second-chance algorithm. Importantly, you should update the corresponding information upon each access. The input sequence of the program is the same as that used in Part 1. Thus, you should be able to utilize the same parser to obtain the corresponding virtual address, then translate it to a physical address with your implemented page table. In the end, you can use the same function as in Part1 to output the translated physical address sequence into an output file. You are provided a part2 input file, named ” part2input
“. Similar to Part1, you only need to report the md5sum of your output file. and write it to p2result.txt. In addition, your program should report the number of page faults encountered for the given access sequence, and this number should be reported in p2result.txt file too.
Write-up: 10 Points
You are required to write a README document (in TXT format only) that describes your project design detail and the execution sequence (with the commands). In particular, please explicitly state which part, if there is any, does not work and the possible reasons why that module does not work. For those working modules, please give a brief (in short) sample output.
RUBRIC
QUALITY OF RESPONSE NO RESPONSE POOR / UNSATISFACTORY SATISFACTORY GOOD EXCELLENT Content (worth a maximum of 50% of the total points) Zero points: Student failed to submit the final paper. 20 points out of 50: The essay illustrates poor understanding of the relevant material by failing to address or incorrectly addressing the relevant content; failing to identify or inaccurately explaining/defining key concepts/ideas; ignoring or incorrectly explaining key points/claims and the reasoning behind them; and/or incorrectly or inappropriately using terminology; and elements of the response are lacking. 30 points out of 50: The essay illustrates a rudimentary understanding of the relevant material by mentioning but not full explaining the relevant content; identifying some of the key concepts/ideas though failing to fully or accurately explain many of them; using terminology, though sometimes inaccurately or inappropriately; and/or incorporating some key claims/points but failing to explain the reasoning behind them or doing so inaccurately. Elements of the required response may also be lacking. 40 points out of 50: The essay illustrates solid understanding of the relevant material by correctly addressing most of the relevant content; identifying and explaining most of the key concepts/ideas; using correct terminology; explaining the reasoning behind most of the key points/claims; and/or where necessary or useful, substantiating some points with accurate examples. The answer is complete. 50 points: The essay illustrates exemplary understanding of the relevant material by thoroughly and correctly addressing the relevant content; identifying and explaining all of the key concepts/ideas; using correct terminology explaining the reasoning behind key points/claims and substantiating, as necessary/useful, points with several accurate and illuminating examples. No aspects of the required answer are missing. Use of Sources (worth a maximum of 20% of the total points). Zero points: Student failed to include citations and/or references. Or the student failed to submit a final paper. 5 out 20 points: Sources are seldom cited to support statements and/or format of citations are not recognizable as APA 6th Edition format. There are major errors in the formation of the references and citations. And/or there is a major reliance on highly questionable. The Student fails to provide an adequate synthesis of research collected for the paper. 10 out 20 points: References to scholarly sources are occasionally given; many statements seem unsubstantiated. Frequent errors in APA 6th Edition format, leaving the reader confused about the source of the information. There are significant errors of the formation in the references and citations. And/or there is a significant use of highly questionable sources. 15 out 20 points: Credible Scholarly sources are used effectively support claims and are, for the most part, clear and fairly represented. APA 6th Edition is used with only a few minor errors. There are minor errors in reference and/or citations. And/or there is some use of questionable sources. 20 points: Credible scholarly sources are used to give compelling evidence to support claims and are clearly and fairly represented. APA 6th Edition format is used accurately and consistently. The student uses above the maximum required references in the development of the assignment. Grammar (worth maximum of 20% of total points) Zero points: Student failed to submit the final paper. 5 points out of 20: The paper does not communicate ideas/points clearly due to inappropriate use of terminology and vague language; thoughts and sentences are disjointed or incomprehensible; organization lacking; and/or numerous grammatical, spelling/punctuation errors 10 points out 20: The paper is often unclear and difficult to follow due to some inappropriate terminology and/or vague language; ideas may be fragmented, wandering and/or repetitive; poor organization; and/or some grammatical, spelling, punctuation errors 15 points out of 20: The paper is mostly clear as a result of appropriate use of terminology and minimal vagueness; no tangents and no repetition; fairly good organization; almost perfect grammar, spelling, punctuation, and word usage. 20 points: The paper is clear, concise, and a pleasure to read as a result of appropriate and precise use of terminology; total coherence of thoughts and presentation and logical organization; and the essay is error free. Structure of the Paper (worth 10% of total points) Zero points: Student failed to submit the final paper. 3 points out of 10: Student needs to develop better formatting skills. The paper omits significant structural elements required for and APA 6th edition paper. Formatting of the paper has major flaws. The paper does not conform to APA 6th edition requirements whatsoever. 5 points out of 10: Appearance of final paper demonstrates the student’s limited ability to format the paper. There are significant errors in formatting and/or the total omission of major components of an APA 6th edition paper. They can include the omission of the cover page, abstract, and page numbers. Additionally the page has major formatting issues with spacing or paragraph formation. Font size might not conform to size requirements. The student also significantly writes too large or too short of and paper 7 points out of 10: Research paper presents an above-average use of formatting skills. The paper has slight errors within the paper. This can include small errors or omissions with the cover page, abstract, page number, and headers. There could be also slight formatting issues with the document spacing or the font Additionally the paper might slightly exceed or undershoot the specific number of required written pages for the assignment. 10 points: Student provides a high-caliber, formatted paper. This includes an APA 6th edition cover page, abstract, page number, headers and is double spaced in 12’ Times Roman Font. Additionally, the paper conforms to the specific number of required written pages and neither goes over or under the specified length of the paper. GET THIS PROJECT NOW BY CLICKING ON THIS LINK TO PLACE THE ORDER
CLICK ON THE LINK HERE: https://collegepaper.us/orders/ordernow
Do You Have Any Other Essay/Assignment/Class Project/Homework Related to this? Click Here Now [CLICK ME] and Have It Done by Our PhD Qualified Writers!!