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

Téma 7: C bez libc

Teoretická část

  • C bez libc
  • Systémová volání
  • Volací konvence
  • Data z jádra
  • Virtuální systémová volání (vsyscall, vdso)

Praktický úkol pro cvičení

  • Procvičování teorie

Domácí úkol

  • Změřte a porovnejte, jak dlouho trvá
    • syscall
    • vsyscall
    • vdso volání (použijte Documentation/vDSO/parse_vdso.c z jádra)
  • Vyberte si jedno volání, které zvládají všechny tři možnosti
  • Zavolejte v cyklu několik tisíckrát
  • Změřte dobu cyklu a vydělte počtem
  • Vypište dobu v nanosekundách (a vepište do commit logu)
  • To všechno bez libc (tj. s gcc -nostdlib)