2017 - Týždeň 5

Zdroj
ručne priradené
Pridané

Pozrieť na YouTube →

Preber si túto prednášku so svojou AI

Skopíruj pripravený podklad a vlož ho do ChatGPT, Claude alebo inej AI — bude ťa učiť alebo skúšať len z tejto prednášky.

Otvoriť AI: ChatGPT · Claude · Gemini

Zhrnutie prednášky

Prednáška nadväzuje na predchádzajúci hangman projekt, kde sa slová načítavali zo súboru words.txt obsahujúceho vyše 55 000 slov. Vysvetľuje sa problém súbežného prístupu viacerých používateľov k jednému súboru na multiuser systéme, kde sa súbor pri otvorení uzamkne (lock) a ostatní musia čakať, čím vzniká úzke hrdlo aplikácie podobné problémom viacvrstvových aplikácií s databázami. Ako riešenie sa navrhuje načítať celý obsah súboru jednorazovo do pamäte namiesto opakovaného otvárania a zatvárania súboru pri každom požiadavku. Diskutuje sa reprezentácia slov ako dvojrozmerného poľa znakov (riadky = slová, stĺpce = písmená) a potreba použiť viacnásobné smerníky (viacero hviezdičiek) na uloženie takejto štruktúry v pamäti. Na konci sa začína písať kód na otvorenie súboru, kontrolu jeho existencie a použitie fscanf s bufferom na postupné načítavanie slov.

  • - Problém súbežného prístupu viacerých používateľov k jednému súboru (words.txt) na multiuser systéme
  • - Uzamykanie súboru (lock) pri otváraní spôsobuje čakanie ostatných používateľov
  • - Podobnosť s úzkym hrdlom aplikácie, napr. pri databázových systémoch vo viacvrstvových aplikáciách
  • - Riešenie: načítať celý súbor jednorazovo do pamäte namiesto opakovaného otvárania/zatvárania
  • - Reprezentácia slov ako dvojrozmerného poľa znakov (riadky = slová, stĺpce = písmená)
  • - Potreba viacnásobných smerníkov (N+1 rozmerné pole) na uloženie dát v pamäti
  • - Praktická ukážka kódu: otvorenie súboru, kontrola chyby, načítanie pomocou fscanf a buffra

Zhrnutie pripravené s pomocou AI z prepisu videa.