hse-caos-2020
В этом репозитории находятся материалы по курсу "Архитектура компьютера и операционные системы", читаемому на втором курсе ПМИ ФКН ВШЭ.
Лекции
- 2020-10-30. Лекция 1. Введение. Презентация. Запись.
- 2020-10-30. Лекция 2. Представление и работа с целыми числами. Презентация. Запись.
- 2020-11-06. Лекция 3. Представление и работа с вещественными числами. Презентация. Запись.
- 2020-11-06. Лекция 4. Взаимодействие программы на Си с окружением. Презентация. Запись.
- 2020-11-13. Лекции 5, 6. Текстовые и бинарные данные. Хранение данных в памяти. Презентация. Запись.
- 2020-11-20. Лекции 7, 8. Проект GNU. Инструментальные средства разработки на Си/Си++. Презентация. Запись.
- 2020-11-27. Лекции 9, 10. История развития компьютеров. Презентация. Запись.
- 2020-12-04. Лекция 11. Оперативная память. Презентация. Запись.
- 2020-12-18. Лекции 12, 13. Ассемблер x86/x64, часть 1. Презентация. Запись.
- 2021-01-15. Лекции 14, 15. Ассемблер x86/x64, часть 2. Презентация. Запись.
- 2021-01-22. Лекции 16, 17. Ассемблер x86/x64, часть 3. Презентация. Запись.
- 2021-01-29. Лекции 18, 19. Ассемблер x86/x64, часть 4. Презентация. Запись.
- 2021-02-05. Лекция 20. Внутренняя архитектура процессоров. Презентация. Запись.
- 2021-02-12. Лекция 21. Взаимодействие с внешними устройствами. Ядро ОС. Презентация. Запись.
- 2021-02-12. Лекция 22. Файловая система, часть 1. Презентация.
- 2021-02-19. Лекция 23. Файловая система, часть 2. Презентация. Запись.
- 2021-02-26. Лекции 24, 25. Файловая система, часть 3. Виртуальная память. Презентация. Запись.
- 2021-03-05. Лекция 26. Файлы, отображаемые в память. Презентация. Запись.
- 2021-03-12. Лекции 27, 28. Процессы. Презентация. Запись.
- 2021-03-19. Лекция 29. Запуск программ на выполнение. Презентация. Запись.
- 2021-03-26. Лекции 30, 31. Каналы. Сигналы, ч.1. Презентация. Запись.
- 2021-04-09. Лекции 32, 33. Сигналы, ч.2. Сокеты. Презентация. Запись.
- 2021-04-16. Лекция 34. Средства межпроцессного взаимодействия. Презентация. Запись.
- 2021-04-23. Лекции 35, 36. Терминалы. Событийно-ориентированные программы. Презентация. Запись.
- 2021-04-30. Лекция 37. Нити. Презентация. Запись.
- 2021-05-14. Лекция 38, 39. Синхронизация (мьютексы, кондвары). Типовые задачи. Презентация. Запись.
- 2021-05-21. Лекция 40. Модель памяти C/C++. Презентация. Запись.
- 2021-05-28. Лекция 41. Корутины. Запись.
- 2021-06-04. Лекция 42. Планирование процессов. Презентация. Запись.
Семинарские занятия
- Ввод-вывод в языке Си
- Целые числа
- Числа с плавающей точкой
- Массивы, указатели, строки
- Списки, деревья. "Широкие" символы.
- Указатели на функции
- Ассемблер x86/x64, часть 1
- Ассемблер x86/x64, часть 2 Запись.
- Ассемблер x86/x64, часть 3
- Ассемблер x86/x64, часть 4 Запись.
- Работа с файлами, часть 1 Запись.
- Работа с файлами, часть 2 Запись.
- Работа с файлами, часть 3 Запись.
- Файлы, отображаемые в память Запись.
- Создание процессов Запись.
- Запуск на исполнение Запись.
- Каналы Запись.
- Сигналы Запись.
- Сокеты Запись.
- Таймеры, Epoll Запись.
- Нити Запись
- Мьютексы, кондвары, атомики Запись
- Нити C++ Запись
Литература
- Р. Э. Брайант, Д. О'Халларон. Компьютерные системы: архитектура и программирование. 2005. ISBN 5-94157-433-9.
- Э. Таненбаум, Х. Бос. Современные операционные системы. 2018. ISBN 978-5-4461-1155-8.
- Р. Лав. Ядро Linux. Описание процесса разработки. 2014. ISBN 978-5-8459-1944-1.
- Раго С. А., Стивенс У. Р. UNIX. Профессиональное программирование.
Прочее
- Установка Fedora 33 в Virtual Box Видео
- Введение в систему команд процессора ARM. Видео