Vaccine Monitor app implemented in C with system Programming techniques.Projects implemented as part of the course Syspro K24

System_Programming_Projects

Vaccine Monitor app implemented in C with system Programming techniques.Projects implemented as part of the course Syspro K24

Project 1

Vaccine Monitor app created using data structures in C, like bloom filter, linear probing hashtable, linked lists,skip lists etc.

Create input dir:

bash testFile.sh info/virusesFile.txt info/countriesFile.txt input_dir x y

where ,x=0|1 ,0 doesn't allow duplicates while 1 does. y is the numer of records you wish to create eg.:1000

Compile

To create new input dir and compile the program simultaneously, write in your terminal:

make all DUP_FLG=x RECORDS=y

where ,x and y are used as described above

To compile ony the project:

make

To delete the objective files:

make clean

To run the project and check memory:

valgrind --leak-check=full ./vaccineMonitor -c input_dir/inputFile.txt -b bloomsize

Project 2

Based on the 1st project we go one step further and we implement the app using signal handlers and named pipes

Create input dir:

bash ./create_infiles.sh input_dir/inputFile.txt input_dir2 numfiles

where numfiles equals to the number of files per country dir

Compile

To create new input dir and compile the program simultaneously, write in your terminal:

make script NUM_FILES_PER_DIR=x

where numfiles equals to the number of files per country dir

To compile ony the project:

make

To delete the objective files:

make clean

To run the project and check memory:

valgrind --leak-check=full --show-leak-kinds=all --trace-children=yes -s ./travelMonitor -m 3 -b 100 -s 1000 -i input_dir

Project 3

Last version of the Vaccine Monitor app.Based on the structure of the 1st project, the app is now implemented based on the concept of "one client - multiple servers " using sockets and threads

Create input dir:

bash ./create_infiles.sh input_dir/inputFile.txt input_dir2 numfiles

where numfiles equals to the number of files per country dir

Compile

To create new input dir and compile the program simultaneously, write in your terminal:

make script NUM_FILES_PER_DIR=x

where numfiles equals to the number of files per country dir

To compile ony the project:

make

To delete the objective files:

make clean

To run the project and check memory:

valgrind --leak-check=full --show-leak-kinds=all --trace-children=yes ./travelMonitorClient -m 3 -b 100 -c 2 -s 1000 -i input_dir -t 3 < instructions.txt
Owner
Aristi_Papastavrou
Undergrad of D.I.T at University of Athens (UoA)
Aristi_Papastavrou
Similar Resources

libelf as part of elfutils has been a major pain in the ass.

libelf in zig libelf as part of elfutils has been a major pain in the ass. All I want to do is make statically compiled programs that use eBPF (libbpf

Jul 21, 2021

A recreation of the "Nobelium" malware based on Microsofts Malware analysis - Part 1: PDF2Pwn

A recreation of the

Nobelium PdfDownloadRunAesMalware A recreation of the "Nobelium" malware based on Microsofts Malware analysis - Part 1: PDF2Pwn 1. Download PDF file f

Nov 9, 2022

THIS REPO IS PART OF WHAT ORCA TOLD ME TO UPLOAD

artifact64 THIS REPO IS PART OF WHAT ORCA TOLD ME TO UPLOAD Generate x64 arch undetactable executables directly from cobalt strike . USAGE : compile u

Nov 15, 2022

mimic of libc’s printf function (42 Project, mandatory part only)

42printf mimic of libc’s printf function (42 Project, mandatory part only) This hasn't been tested yet by moulinette and is not recommended to take as

Oct 26, 2021

Final version of my dissertation project at the University of Birmingham as part of MSc. Computer Science degree.

Final version of my dissertation project at the University of Birmingham as part of MSc. Computer Science degree.

Unfair Edge: A Low-Level Manipulation of Game Memory with Bypassing VAC This repository hosts the code submitted as a dissertation project for MSc. Co

Nov 4, 2021

THIS REPO IS PART OF WHAT ORCA TOLD ME TO UPLOAD

ACHLYSv2 How it works: First ACHLYS detects the environment of the machine its being in, by checking sandboxes and debuggers presents. second when the

Feb 1, 2022

THIS REPO IS PART OF WHAT ORCA TOLD ME TO UPLOAD

ACHLYSv1 How it works: First ACHLYS detects the environment of the machine its being in, by checking sandboxes and debuggers presents. second when the

Nov 29, 2021

THIS REPO IS PART OF WHAT ORCA TOLD ME TO UPLOAD

How Does 0x41 work: 1- checks the environment [detect sandboxes / debuggers / virtual machines] 2- download the [encrypted] shellcode file [.bin] if t

Jan 12, 2022

THIS REPO IS PART OF WHAT ORCA TOLD ME TO UPLOAD

THIS REPO IS PART OF WHAT ORCA TOLD ME TO UPLOAD

WHALE : A AES CRYPTOR USAGE: All u have to do is to build "builder" project and run it according to ur arguments. the builder.exe will then build and

Sep 9, 2022
PLP Project Programming Language | Programming for projects and computer science and research on computer and programming.
PLP Project Programming Language | Programming for projects and computer science and research on computer and programming.

PLPv2b PLP Project Programming Language Programming Language for projects and computer science and research on computer and programming. What is PLP L

Aug 20, 2022
An easy to build CO2 Monitor/Meter with Android and iOS App for real time visualization and charting of air data, data logger, a variety of communication options (BLE, WIFI, MQTT, ESP-Now) and many supported sensors.
An easy to build CO2 Monitor/Meter with Android and iOS App for real time visualization and charting of air data, data logger, a variety of communication options (BLE, WIFI, MQTT, ESP-Now) and many supported sensors.

CO2-Gadget An easy to build CO2 Monitor/Meter with cell phone App for real time visualization and charting of air data, datalogger, a variety of commu

Nov 15, 2022
Project in the field of Advanced Programming Techniques by prof. Brian Kernighan, inspired by real event that made Ken Thompson invent grep command

ed_to_grep Project in the field of Advanced Programming Techniques by prof. Brian Kernighan, inspired by real event that made Ken Thompson invent grep

Nov 1, 2022
Several Proteus projects using Arduino Boards and sensors, these were parts of IoT course homework #1.

1. Print Print your name on virtual terminal using one of the Arduino family microcontrollers. 2. Highway Based on the position of the car in highway,

Nov 3, 2021
This is the repo for the microcontroller part of project Cleanurge - a scalable IoT powered waste management system, our solution towards a greener world.
This is the repo for the microcontroller part of project Cleanurge - a scalable IoT powered waste management system, our solution towards a greener world.

Cleanurge A scalable waste management system powered by IoT. There are 3 repositories for the entire cleanurge system in total cleanurge-mcu: Containi

Oct 11, 2021
Sharpmake is an open-source C#-based solution for generating project definition files, such as Visual Studio projects and solutions, GNU makefiles, Xcode projects, etc.

Sharpmake Introduction Sharpmake is a generator for Visual Studio projects and solutions. It is similar to CMake and Premake, but it is designed for s

Nov 25, 2022
ContactGot is an offline desktop app, where clients can leave their info, while an administrator can manage which information they need to gather on certain projects.
ContactGot is an offline desktop app, where clients can leave their info, while an administrator can manage which information they need to gather on certain projects.

ContactGot Contents Description How to use Requirements Engineering Installation Documentation Design Architecture Demonstration 1. Description During

Sep 17, 2022
If the button pressed esp will reset and App mode will on. App mode will on then led will on, network is connected led will off.

DHT22-to-Google-sheet-Reset-Using-ESP8266-LED-Switch If button pressed esp will reset and App mode will on. App mode will on then led will on, network

Aug 17, 2022
Flutter-Clock-and-Reminder-App - a highly functional clock and reminder app developed on flutter framework.

clock_app A new Flutter project. Getting Started This project is a starting point for a Flutter application. A few resources to get you started if thi

Aug 4, 2022
A handy little system information monitor using and ESP32 + ILI9488 TFT. Receives data over Serial Bluetooth.
A handy little system information monitor using and ESP32 + ILI9488 TFT. Receives data over Serial Bluetooth.

Bluetooth-System-Monitor A handy little system information monitor using and ESP32 + ILI9488 TFT. Receives data over Serial Bluetooth and thus giving

Nov 29, 2022