dianacretu / processes-planner Goto Github PK
View Code? Open in Web Editor NEWThe project shows how the processor decides what process is next to be executed.
The project shows how the processor decides what process is next to be executed.
***************************************** * README * * * * Nume proiect: Tema 1 Sd * * Autor: Diana Cretu * * Grupa: 312 CC * * Deadline: Duminica, 2.03.2017 * * * * * ***************************************** 1. Ierarhia proiectului Codul sursa este structurat intr-un fisier header (Proces.h)(fisier in care sunt definite functiile si structurile folosite), fisierul cu codul sursa (planificator.c) (unde sunt implementate functiile) si un Makefile care construieste proiectul. Structura proiect: proiect ├── planificator.c ├── Proces.h └── Makefile 2. Descrierea aplicatiei Aceasta aplicatie exemplifica modul de lucru al calculatorului cu procesele. Arata faptul ca nu poate rula decat un proces o data (running fiind o lista cu un singur nod). Pentru ca pentru a selecta ce proces va fi pe procesor presupune mai multe criterii ce pot fi contradictorii, am folosit diferite functii (FCFS, SJF, RR, PP). Structura de data folosita in implementare este lista (ca si caz particular de lista, am folosit coada). 3. Functii folosite init -> initializeaza o lista enqueue -> initializeaza un proces cu numele, timpul si prioritatea data prin parametri si il adauga la finalul listei dequeue -> scoate primul proces din lista si elibereaza memoria aferenta show -> afiseaza lista tick -> marcheaza trecerea timpului si odata ce timpul procesului din running ajunge la 0, este dat afara si inlocuit cu primul proces din ready tick2 -> la terminarea timpului procesului din running, este inlocuit cu procesul cu timpul cel mai scurt tick3 -> atunci cand timpul petrecut in running de un proces ajunge sa fie egal cu cuanta, este returnat in ready, iar primul proces din ready ii ia locul tick4 -> se intalnesc caracteristicile de la tick2 si tick3, dar, in plus, este selectat primul proces ce apare in ready cu prioritatea cea mai mare max_prioritate -> returneaza prioritatea maxima ce apare in lista ready nod_maxim -> returneaza primul nod din ready ce are campul prioritate egal cu valoare functiei max_prioritate tick5 -> este adaugata conditia pentru modificare prioritatii multipleadd -> adaugarea proceselor primite din comanda in ready add -> adaugarea procesului primit in ready wait -> trimiterea din running in wait wait5 -> trimiterea din running in wait, si in plus modificare prioritatii dinamice unde este cazul 4. Folosirea aplicatiei Dupa dezarhivare, trebuie folosit make pentru a crea proiectul si ./planificator input output pentru a-l rula. ***************************************** * END README * * * * Nume proiect: Tema 1 Sd * * Autor: Diana Cretu * * Grupa: 312 CC * * Deadline: Duminica, 02.04.2017 * * * * * *****************************************
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.