Difference between revisions of "LU-LSP-b:L07"

From DiLab
Jump to: navigation, search
(Created page with "==== Uzdevums ==== Realizēt vienkāršu dinamiskās atmiņas izdalīšanas risinājumu. Jarealizē: void * myalloc(size_t size); int myfree(void * ptr); Dots statisks at...")
 
 
(2 intermediate revisions by the same user not shown)
Line 3: Line 3:
Realizēt vienkāršu dinamiskās atmiņas izdalīšanas risinājumu.
Realizēt vienkāršu dinamiskās atmiņas izdalīšanas risinājumu.


Jārealizē:
Jarealizē:
void * myalloc(size_t size);
void * myalloc(size_t size);
int myfree(void * ptr);
int myfree(void * ptr);
Line 19: Line 19:
Testēt dažādus scenārijus un novērtēt veiktspēju. Komentēt ari kādu metriku jūs izvēlaties veiktspējas novērtējumam, un kādus testus.
Testēt dažādus scenārijus un novērtēt veiktspēju. Komentēt ari kādu metriku jūs izvēlaties veiktspējas novērtējumam, un kādus testus.


Risinājumu iesūtīt e-studijās.
==== Iesniegt ====
Jāiesniedz <del>epastā pasniedzējam</del> estudijas.lu.lv pie PD7, teksta laukā secinājumus un piekabē programmas pirmkodu:
* Fails: LSP_PD7_Vards_Uzvards.c
<del>* Subject: LSP PD7 Vards Uzvards</del>

Latest revision as of 00:12, 18 March 2020

Uzdevums

Realizēt vienkāršu dinamiskās atmiņas izdalīšanas risinājumu.

Jārealizē:

void * myalloc(size_t size);
int myfree(void * ptr);

Dots statisks atmiņas buferis ierobežotai atmiņai, ko var izmantot myalloc():

#define MY_BUFFER_SIZE 4096

unsigned char mybuffer[MY_BUFFER_SIZE];

Kļūdas vai nepietiekamas atmiņas gadījumā myalloc() atgriež NULL, un myfree() atgriež (-1);

Izmantot NextFit algoritmu brīvo atmiņas bloku meklēšanai un piešķiršanai.

Testēt dažādus scenārijus un novērtēt veiktspēju. Komentēt ari kādu metriku jūs izvēlaties veiktspējas novērtējumam, un kādus testus.

Risinājumu iesūtīt e-studijās.