Skip to content
MagoDopado edited this page Sep 28, 2015 · 3 revisions

Sams-Core

Some Awsome Memory Scheduler

Motivation

Ever since we took "Introducción a los sistemas operativos" (Introduction to the Operative Systems) at "Universidad Nacional de La Plata (UNLP)" we were interested in how the OS manages it's pages and how complex does it is.

This project surges from the lack of a tool that would easily emulate the OS Memory Scheduling in the context of some practices we had at the university. Since we couldn't validate our answers were right and all exersices were made in paper, we said: let's make it!

Technologies

So we wanted this tool to be available for everyone, with that premise we thought that Javascript (more specifically NodeJS) would fit well the cross-plataform role.

As we started planning and designing SAMS we realized that we would need something to facilitate us the use of Object Oriented Programming based in classes (since ES6 wasn't yet available and we weren't used to prototype-based inheritance either), that's when we found CocktailJS.

CocktailJS is a small library for NodeJS to help developers defining classes and modules in a better, more readable and organised way. It also explores other technics to reuse code such as Annotations, Traits and Talents.

All code in the core of SAMS is written using Cocktail annotations and the founder himself (@elmasse) helped us during the first steps of the application.

The testing was driven by Mocha which integrated well in our development since it's easy to install and use.

Mocha is a feature-rich JavaScript test framework running on Node.js and the browser, making asynchronous testing simple and fun. Mocha tests run serially, allowing for flexible and accurate reporting, while mapping uncaught exceptions to the correct test cases. Hosted on GitHub.

Clone this wiki locally