Dom > Razstava > Vsebine

Operacijski sistem v realnem času Dodeljevanje pomnilnika

Mar 08, 2019


Dodeljevanje pomnilnika je bolj kritično v operacijskem sistemu v realnem času kot v drugih operacijskih sistemih.


Prvič, zaradi stabilnosti ne more priti do puščanja pomnilnika (pomnilnik, ki je dodeljen, vendar ni sprostil po uporabi). Naprava mora delovati za nedoločen čas, brez potrebe po ponovnem zagonu. Iz tega razloga se dinamično dodeljevanje pomnilnika ne upošteva. Kadar je to mogoče, je vsa zahtevana dodelitev pomnilnika podana statično v času prevajanja.


Drug razlog za izogibanje dinamičnemu dodelitvi pomnilnika je razdrobljenost pomnilnika. S pogostim dodeljevanjem in sproščanjem majhnih delov pomnilnika lahko pride do situacije, ko je razpoložljivi pomnilnik razdeljen na več delov in RTOS ne more dodeliti dovolj velikega neprekinjenega pomnilnika, čeprav je dovolj prostega pomnilnika. Drugič, hitrost dodeljevanja je pomembna. Standardna shema dodeljevanja pomnilnika skenira povezan seznam nedoločene dolžine, da bi našla primeren prost blok pomnilnika, kar je v RTOS-u nesprejemljivo, ker se mora dodeljevanje pomnilnika zgoditi v določenem času.


Ker imajo mehanski diski veliko daljše in nepredvidljive odzivne čase, se zamenjava z diskovnimi datotekami ne uporablja iz istih razlogov, kot je bilo omenjeno v razdelku RAM.


Preprost algoritem s fiksnimi velikostnimi bloki deluje precej dobro za preproste vgrajene sisteme zaradi nizke obremenitve.