Tématické skupiny v rámci předmětu PB173 Tematicky zaměřený vývoj aplikací v jazyce C/C++

Téma 5: Práce s pamětí

Teoretická část

  • Práce s adresami
  • Stručný popis alokátorů
    • Stránkový (__get_free_pages)
    • SLAB (kmalloc)
    • Virtuální (vmalloc)

Praktický úkol pro cvičení

  • Vyzkoušet práci s adresami
  • Vyzkoušet alokace paměti

Praktický úkol pro cvičení a domácí úkol

  • write rozšiřte tak, aby udržel 20M dat, jejichž obsah budete vracet při čtení v read
  • Data budou globalní, všichni ostatní uvidí, co jeden zapisovač zapsal
  • Buffer po alokaci procházejte po stránkách a na začátek každé stránky zapište řetězec ve formátu:
    • <Virtuální_adresa_stránky>: <fyzická_adresa_stránky>\n
  • Zbytek bufferu vyplňte nulami (abychom nevynášeli informace)
  • Tzn. cat /dev/… vrátí dvojice adres, na kterých se rozkládá buffer (dokud tento obsah nepřepíšu přes write)