COE 0447 — Computer Organization and Assembly Language Page 1

Lab 1: Introduction to MARS Submission timestamps will be checked and enforced strictly by the CourseWeb; late submissions will not be accepted. Check the due date of this lab on the CourseWeb. Remember that, per the course syllabus, if you are not marked by your recitation instructor as having attended a recitation, your score will […]

COE 0447 — Computer Organization and Assembly Language Page 1 Read More »

INFR100792023 page walker

* This file is not tested, so may not compile/work * correctly, out of the box. #define pr_fmt(fmt) “page-walker: ” fmt #include #include #include #include #include #include #include unsigned long pw_virt; unsigned long pw_phys; void walk_address(struct mm_struct *mm, unsigned long virt) pw_phys = 0; pgd_t *pgd; p4d_t *p4d; pud_t *pud; pmd_t *pmd; pte_t *pte; pgd

INFR100792023 page walker Read More »

INFR100792023 OS Coursework 2

Operating Systems Courseworks 2023-2024 Course Number: INFR100792023 Semester Number: 2 Score Out of 100: 50% Authors: Amir Noohi, Alan Nair Edinburgh, March 5, 2024 Operating Systems Coursework 1 Introduction 1 1.1 Aims of the Coursework . . . . . . . . . . . . . . . . . . . .

INFR100792023 OS Coursework 2 Read More »

INFR100792023 LabCW2

Operating Systems Tutorial/Lab CW1 Operating Systems Tutorial/Lab CW2 Semester 2 Academic year 23-24 Karim Manaouil, Antonio Barbalace • Quick recap on Virtual Memory and PCB • Page Table • mm_struct • VM areas Some material from: https://linux-kernel-labs.github.io/refs/heads/master/labs/memory_mapping.html https://linux-kernel-labs.github.io/refs/heads/master/labs/memory_mapping.html Recap: Virtual Memory In the old days (1970) With virtual memory Translation load from 0x102030 load from

INFR100792023 LabCW2 Read More »

INFR100792023 CW2 slides

Operating Systems Coursework 2 Operating Systems Coursework 2 Coursework 2: Memory management/mapping DUE: 19/03/2024 12:00PM All deadlines are strict and fall on a Tuesday at 12PM GMT Marking & Late submission Last version of submission will be marked Coursework 2 ● Managing and Manipulating the Memory subsystem of Linux ● Modifying Linux kernel source code

INFR100792023 CW2 slides Read More »

CS0019 helpers

#include “shell.h” #include typedef struct buildstring { int length; int capacity; } buildstring; // buildstring_append(bstr, ch) // Add `ch` to the end of the dynamically-allocated string `bstr->s`. void buildstring_append(buildstring* bstr, int ch) { if (bstr->length == bstr->capacity) { int new_capacity = bstr->capacity ? bstr->capacity * 2 : 32; bstr->s = (char*) realloc(bstr->s, new_capacity); bstr->capacity =

CS0019 helpers Read More »

CS0019 shell

#include “shell.h” #include #include #include #include // struct command // Data structure describing a command. Add your own stuff. typedef struct command command; struct command { int argc; // number of arguments char** argv; // arguments, terminated by NULL pid_t pid; // process ID running this command, -1 if none // command_alloc() // Allocate and

CS0019 shell Read More »

CSC420 Assignment 4

Intro to Image Understanding (CSC420) Assignment 4 Posted: March 18, 2024 Submission Deadline : March 27, 11.59pm, 2024 Max points: 15 1. [3 points] In this exercise, you are asked to take a photo. In particular, please take a planar item/object for which you know the real-world width and height (in cm), for example a

CSC420 Assignment 4 Read More »