Skip to content

CAOS-Group-No-9/PolitoCAOSProject

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GROUP 09 - CAOS PROJECT 2023-24

Repository for the group project: HaclOSsim - Computer Architectures and Operating Systems

This project aims to explore the usage of a real-time operating system, with hand-practice. The used operating system was FreeRTOS, in which we implemented some demos and added a new feature.

Structure of the Repository

  • Documentation
    • HaclOSsim - Group09.pptx
    • HaclOSsim - Group09.pdf
    • Report.pdf
    • Report.tex
  • Examples
    • demoTimer.c
    • demoSemaphores.c
    • demoStats.c
    • demoHospital.c
    • demoHospital2.c
    • demoMatrix.c
    • DemoScheduler
      • demoScheduler.c
  • FreeRTOS

Installation and usage of the repository

  • QEMU Installation

    • Windows Users

      Go to https://www.qemu.org/download/ and search for the appropriate installer based on your operating system. Once you choose the appropriate section, choose the appropriate processor architecture (32/64-bit) and you will be able to find the last version of the executable file (qemu-w64-setup-x.exe, where “x” is the last release date).
      After installing the .exe file, execute it and follow the passages to install Qemu.
      Pay attention to the path of the folder where you are installing the emulator, to start it easily.
    • MacOS Users

      QEMU can be installed from Homebrew:
      brew install qemu
      QEMU can be installed from MacPorts:
      sudo port install qemu
      QEMU requires the most recent macOS version that is currently available. Support for the last previous version will be dropped two years after the current version has been released or when Apple drops support for it, whatever comes first.
    • Linux Users

      QEMU is packaged by most Linux distributions:
      • Arch: pacman -S qemu
      • Debian/Ubuntu:
        • For full system emulation: apt-get install qemu-system
        • For emulating Linux binaries: apt-get install qemu-user-static
      • Fedora: dnf install @virtualization
      • Gentoo: emerge --ask app-emulation/qemu
      • RHEL/CentOS: yum install qemu-kvm
      • SUSE: zypper install qemu
  • FreeRTOS Installation

    Go to https://www.freertos.org/a00104.html. Download from the "Download" button and extract the content.
    Package contains the FreeRTOS Kernel, FreeRTOS-Plus libraries and AWS IoT libraries, along with example projects.
  • GNU Make Installation

    Go to https://developer.arm.com/downloads/-/arm-gnu-toolchain-downloads.
    • Windows Users

      Find the release called “AArch32 bare-metal target (arm-none-eabi)” and download the .exe file provided by the web site.
    • MacOS Users

      Find the release called “AArch32 bare-metal target (arm-none-eabi)” and download the .pkg file provided by the web site.
    • Debian-based Users

      Install ARM GNU Toolchain using the following terminal commands:
      sudo apt install gcc-arm-none-eabi
      sudo apt install gdb-arm-none-eabi
      sudo apt install binutils-arm-none-eabi
  • How to compile FreeRTOS

    To make your work easier, we recommend downloading and install Visual Studio Code.
    • Windows Users

      Make sure that ARM GNU Toolchain and GNU Make are in environmental variables path, otherwise, you can add it manually copying the path of the tool and pasting it in this location Start > Edit System Variable > Path. Subsequently, you will be able to run, with Visual Studio Code, the file main.c which is reachable in this path FreeRTOSv202212.01\FreeRTOS\ \<Folder Name\> \CORTEX_MPS2_QEMU_IAR_GCC\ and, if you followed carefully all the steps, you will find a .out file called RTOSDemo.out with this path FreeRTOSv202212.01\FreeRTOS\ \<Folder Name\> \CORTEX_MPS2_QEMU_IAR_GCC\build\gcc\output\.
      Note that \<Folder Name\> in the filesystem is one of the three folders Examples, Examples\DemoScheduler, or FreeRTOS.
    • MacOS Users

      Go to FreeRTOSv202212.01/FreeRTOS/\<Folder Name\>/CORTEX_MPS2_QEMU_IAR_GCC/build/gcc and from the terminal digit the command make. When the running will finish and the system will return the terminal, you will be able to run the demo. Note that \<Folder Name\> in the filesystem is one of the three folders Examples, Examples/DemoScheduler, or FreeRTOS.
    • Linux Users

      The actions to perform are the same as in the MacOS Users section.

About

CAOS project - Group No. 9

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •  

Languages