Skip to content

Latest commit

 

History

History

2023-226

2023-2024 год

  1. [к][yt][vk] - Терминал. vim. tmux.
  2. [к][yt][vk] - Язык ассемблера. Представление целых чисел. Сдвиги. GDB.
  3. [к][yt][vk] - Переменные и массивы. Стек. Cdecl. Запуск asm+c и asm+c++ кода.
  4. [к][yt][vk] - Lea, строки, части регистров, switch.
  5. [к][yt][vk] - Указатели на функции. Variadic functions.
  6. [к][yt][vk] - Си. Printf/scanf, неожиданные последствия UB, буферизация, атака переполнением буфера, работа со строками используя арифметику указателей.
  7. [к][yt][vk] - Си. Работа с динамической памятью. malloc/calloc/realloc. Brk/Sbrk. OOM-killer.
  8. [к][yt][vk] - Кодировки. Unicode, UTF-8, KOI8-R. Как работают emoji.
  9. [к][yt][vk] - IEEE754, float/double, разбираемся в битах, смотрим на 0.1+0.2 != 0.3
  10. [к][yt][vk] - GDB. Break, watch. Встроенный питон. Обратный дебаг. Pretty printers.
  11. [к][yt][vk] - FPU, SIMD, пишем векторизацию на языке ассемблера
  12. [к][yt][vk] - Системные вызовы. Read/Write, прерывания. 0x80
  13. [к][yt][vk] - Git. Ветки, коммиты. Делаем PR. Rebase.
  14. [к][yt][vk] - ОС YABLOKO. Port-mapped I/O, Memory-mapped I/O, делаем простую анимацию и игру.
  15. [к][yt][vk] - ОС YABLOKO. Пишем свой sleep, используя Programmable Interval Timer
  16. [к][yt][vk] - Fork. Создаем процессы, дожимдаемся их выполнения. Форк-бомба.
  17. [к][yt][vk] - Exec. Разбираемся, как баш запускает процессы, exec+lp/le/ve/vp/vpe. dup/dup2.
  18. [к][yt][vk] - Mmap. Маппинг файла, анонимный маппинг, общая память в процессах. Как работает malloc.
  19. [к][yt][vk] - Как работают файлы и права. inode, symlink vs hardlink. Что за странный буквы S, T в правах (drwxrwxrwt)
  20. [к][yt][vk] - Сигналы. Обработчики. Sigaction. Почему не все функции можно использовать внутри обработчика.
  21. ?????
  22. [к][yt][vk] - Каналы. Pipe(2). Dup2(2). Как напрограммировать ls -l | wc -l.
  23. [к][yt][vk] - Системы сборки. Make.
  24. [к][yt][vk] - Тестирование проектов. C/Go.
  25. [к][yt][vk] - Сеть и сокеты. Getaddrinfo, connect, socket, accept. Простой клиент и сервер.
  26. [к][yt][vk] - Мультиплексирование. Epoll. Edge-triggered vs level-triggered. Epoll + pipe. Epoll server.
  27. [к][yt][vk] - Все есть файловый дескриптор. eventfd, timerfd, signalfd. Соединяем все с epoll.
  28. [к][yt][vk] - Pthread. Запускаем наибольшее возможное количество потоков. Передаем и принимаем параметры.
  29. [к][yt][vk] - Mutex. Atomic vs mutex. Race и Deadlock. Делаем банк.
  30. [к][yt][vk] - Арендуем сервер в облаке. Запускам свой epoll сервер. nginx + systemd.

Консультации

  1. yt - секции кода, представление чисел, гдб