Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

0856167 Lab 07 08 #240

Open
wants to merge 11 commits into
base: 0856167
Choose a base branch
from
Open

0856167 Lab 07 08 #240

wants to merge 11 commits into from

Commits on May 28, 2021

  1. Configuration menu
    Copy the full SHA
    8ffbc5e View commit details
    Browse the repository at this point in the history
  2. Feat: Lab7, Requirement, eletive1 and eletive4-1

    In Lab7, we implement FAT32 file system with sd card
    hardware device.
    
    Implement the following features:
    1. Implement FAT32 file system that meet the VFS interface.
    2. Access sd card by simple sd card device driver (Provided by TA).
    3. Mount the fat32 to VFS from sd card.
    4. Read/Parse Master Boot Record(MBR) and FAT32 boot sector.
    5. Open/Read/Write/Create a file in FAT32 and sd card.
    6. Cache the directory entry read from device in memory for
       pathname lookup (Eletive 4-1).
    7. Add some test files in "./sdcard" folder and build some
       test cases.
    Yunyung committed May 28, 2021
    Configuration menu
    Copy the full SHA
    736eb8a View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    e3b9353 View commit details
    Browse the repository at this point in the history
  4. Update Lab7 README.md

    Yunyung committed May 28, 2021
    Configuration menu
    Copy the full SHA
    da07f88 View commit details
    Browse the repository at this point in the history

Commits on Jun 5, 2021

  1. Configuration menu
    Copy the full SHA
    5f2d651 View commit details
    Browse the repository at this point in the history

Commits on Jun 7, 2021

  1. Feat: Lab8 - Virtual Memory, Requirement1

    Initialize the memory management unit(MMU) and set up the
    address spaces for the kernel and user processes
    to achieve process isolation
    
    1. Set up TCR_EL1 and mair_el1 system register for configuring MMU
    2. Modify linker script to meet MMU configs
    3. Set up identity paging.
    4. Linear map kernel with three layer translation(secotion mapping, 2MB)
       granularity
    Yunyung committed Jun 7, 2021
    Configuration menu
    Copy the full SHA
    6456e7f View commit details
    Browse the repository at this point in the history

Commits on Jun 9, 2021

  1. Feat: Lab8 - Virtual Memory Req2, elec3

    Requirement2:
        - Implement user space paging.
        - Revisit fork() and exec() to map the same virtual address to
          different physical addresses for different processes.
        - Set ttbr0_el1 to switch the user space page table and
          address space in context switches.
        - Implement a simple page fault handler.
        - Write test cases for fork and exec syscalls.
    Elective3, Imeplement Page Fault Handler & Demand Paging:
        - (Segmentation fault) If the fault address is not part of any
          region in the process’s address space, process will be killed.
        - (Demand paging) If it’s part of one region, map one page frame
          for the fault address. It's tested and occured by stack
          page allocation, because we not allocate page for stack when
          create process.
    Yunyung committed Jun 9, 2021
    Configuration menu
    Copy the full SHA
    0909ea6 View commit details
    Browse the repository at this point in the history

Commits on Jun 10, 2021

  1. Feat: Lab8 - elec1, mmap

    Yunyung committed Jun 10, 2021
    Configuration menu
    Copy the full SHA
    ffe8c74 View commit details
    Browse the repository at this point in the history

Commits on Jul 8, 2021

  1. Fix: failure run on rpi3 hardware

    The reason why program run on hardware failure is that
    uart read interrupt might be triggered continously when
    we initalize rpi3 hardware. Sometimes there are a random char
    is generated during booting rpi3 for no reason(We can't find the reason)
    Yunyung committed Jul 8, 2021
    Configuration menu
    Copy the full SHA
    5da0c64 View commit details
    Browse the repository at this point in the history

Commits on Jul 9, 2021

  1. Update README.md to Lab8

    Yunyung committed Jul 9, 2021
    Configuration menu
    Copy the full SHA
    496ce05 View commit details
    Browse the repository at this point in the history

Commits on Jul 27, 2021

  1. Fix: Typo in README.md

    Yunyung committed Jul 27, 2021
    Configuration menu
    Copy the full SHA
    9f21d91 View commit details
    Browse the repository at this point in the history