~~NOTOC~~ ===== Темы дополнительных заданий ===== ==== A.Механизмы для реализации виртуальных лабораторий на основе TLJH/Everest ==== - Установка TLJH (https://tljh.jupyter.org/en/latest/) на виртуальной машине {{docs:settingtljh.pdf|pdf}} - Удаление пользователей (и их файлов) из TLJH по заданному времени неактивности {{docs:tljh-cleanup.pdf|pdf}}. - Программное добавление пользователей в TLJH {{science:jh-auto-user.pdf|pdf}}. - Принудительное завершение сеанса пользователя в TLJH по заданному времени предельной длительности сеанса {{docs:close-tljh-session.pdf|pdf}}. - Установка TempletSDK в сессию пользователя TLJH с использованием https://github.com/jupyterhub/nbgitpuller {{docs:nb-puller.pdf|pdf}}. - Настройка агента Эверест для работы в MyBinder.org с Python3 {{docs:python3.pdf|pdf}}. - Закрытие сессии, удаление пользователя после заданного интервала времени средствами TLJH. Настройка входа: регистрация по вводимому логину/паролю с автоматическим подтверждением{{docs:close_and_delete_users.pdf|pdf}}. - Установка DocuWiki (https://www.dokuwiki.org) на виртуальной машине [[http://templet.ssau.ru/wiki/_media/docs/6213._%D1%81%D0%B8%D0%BD%D0%B8%D1%86%D1%8B%D0%BD_%D0%BC._docuwiki.pdf|pdf]] - Вывод информации на страницу DocuWiki из утилиты командной строки (через стандартный REST API или через файловую систему) [[http://templet.ssau.ru/wiki/_media/docs/6213._%D1%81%D0%B8%D0%BD%D0%B8%D1%86%D1%8B%D0%BD_%D0%BC._docuwiki_a3.pdf|pdf]] - Вывод информации в документ GoogleDoc из консольной утилиты через API Google [[http://templet.ssau.ru/wiki/_media/docs/%D0%B2%D1%8B%D0%B2%D0%BE%D0%B4_%D0%B8%D0%BD%D1%84%D0%BE%D1%80%D0%BC%D0%B0%D1%86%D0%B8%D0%B8_%D0%B2_%D0%B4%D0%BE%D0%BA%D1%83%D0%BC%D0%B5%D0%BD%D1%82.pdf|pdf]] {{docs:google-sheet.pdf|pdf}} - Автоматический ввод login/pass и вывод URI сессии для TLJH утилитой командной строки {{docs:callingtljh.pdf|pdf}} - Обнаружение процесса ноутбука, запускаемого в TLJH, отслеживание его активности - Запуск расчета в программе MathCAD из командной строки и из системы Everest(https://everest.distcomp.org) - Обнаружение идентификатора пользователя и идентификатора сессии в программе, запускаемой в системе Everest - Работа с расширениями JupyterLab (запуск команд bash через палитру, запуск одной команды палитры из другой команды в JupyterLab) - Реализовать запуск everest-приложения Sleep (https://everest.distcomp.org/apps/sol/sleep) из кода на JavaScript (TypeScript) - Разработка python-пакета для беспарольной аутентификации в JupyterHub{{science:nedugov.pdf|pdf}} - Утилита logman для управления журналом событий.[[https://github.com/alexkvereng/DOP|GitHub]] ==== B.Сервис для работы с TempletSDK на основе TLJH (требования) ==== - Две настройки регистрации в сервисе с возможностью переключения между ними через учетную запись пользователя с правами администратора: а) для всех пользователей с назначением логина и пароля при первом входе без подтверждения администратора; тоже, но с подтверждением администратора{{:docs:sign-in.pdf|pdf}}. - Включенная опция ознакомления с правилами использования при регистрации на сервисе{{:docs:sign-in.pdf|pdf}}. - Скрипт для остановки сессии и удаления пользователя по заданным тайм аутам (время непрерывной работы, время жизни учетной записи, время опроса). Останавливает сессии и удаляет пользователей с обычными правами (не администраторов). Пользователь-администратор имеет возможность запустить или остановить выполнение скрипта (пишется свой сервис или crone){{:docs:stop-session.pdf|pdf}}{{:docs:stop-session.zip|zip}}. - Установленный nbgitpuller. Подготовленная ссылка для открытия сессии с загруженным репозиторием TempletSDK (https://github.com/the-templet-project/templet){{:docs:nbgitpuller.pdf|pdf}}. - Установленные зависимости TempletSDK: gcc(c/c++), libcurl, xeus-cling, в отдельном окружении conda (everest): python 3.9, tornado 4.5.3, six 1.16. - Кастомизация интерфейса TLJH с применением символики проекта Templet и Самарского университета {{:docs:castom.zip|zip}}. - Настройка сертификата. ==== C.Моделирование распределенных рабочих процессов с использованием системы Templet==== - Интегрирование разбиением интервала на равные отрезки методом "портфель задач" - Фильтрация простых чисел, передаваемых по цепочке процессов (с подтверждением приема переданного числа) - Сортировка чисел, передаваемых по цепочке процессов (без подтверждения приема переданного числа) - Поиск с возвратом на цепочке процессов в задаче о 8 ферзях, распараллеливание поиска - Поиск с возвратом на цепочке процессов при построении комбинаторных сочетаний для множеств целых чисел и распараллеливание поиска - Поиск с возвратом на цепочке процессов при построении комбинаторных размещений для множеств целых чисел и распараллеливание поиска - Поиск с возвратом на цепочке процессов при построении комбинаторных разбиений конечных множеств целых чисел и распараллеливание поиска - Сортировка слиянием на дереве процессов - Умножение матриц на кольце процессов (установка MPI под Windows)[[http://templet.ssau.ru/wiki/_media/docs/mpi.pdf|pdf]] - Вычисление интегральной суммы методом адаптивной квадратуры с использованием пополняемого "портфеля задач" - Вычисление ближайшей точки для всех точек заданного множества путем перебора всех паросочетаний точек на сети процессов - Объединение пересекающихся подмножеств путем перебора всех паросочетаний точек на сети процессов - Систолический процесс красное-черное на цепочке процессов (имитация расчета температуры стержня) - Систолический процесс красное-черное на сетке процессов (имитация расчета температуры пластины) - Волновой процесс на цепочке процессов (имитация расчета температуры стержня) - Волновой процесс на сетке процессов (имитация расчета температуры пластины) - Вычисление таблицы простых чисел методом пополняемого "портфеля задач" с запоминанием найденных простых чисел в рабочих процессах - Распараллеливание обработки независимых паросочетаний, заданных последовательным перечислением - **...** ==== D.Моделирование и автоматизация учебного процесса ==== - Описание/реализация рабочего процесса лабораторной работы по курсу ОС - Описание/реализация рабочего процесса экзамена по курсу ОС - Описание/реализация рабочего процесса лекционного занятия по курсу ОС - **...** ==== E.Сопровождение системы Templet ==== - восстановление удаленной разметки кода в системе Templet на основе шаблона - управление распределенным вычислением задач с использованием MPI на кластере - управление перебором всех возможных вариантов выполнения системы акторов - исследование и оптимизация механизма синхронизации задач - усовершенствование интерфейса для запуска задач на платформе Everest, MPI, в одном процессе - имитационное моделирование выполнения задач - **...** ==== F.Решение прикладных задач ==== - Разработка Web-энциклопедии ботанического сада Самарского университета, совместно с компанией Cloud Castle (https://cloudcastle.ru/) - Постобработка результатов вычислительных экспериментов в гриде добровольных вычислений, совместно с проектом Gerasim@home (https://gerasim.boinc.ru/) - Скриншот средствами WinAPI в Lua (https://www.lua.org/) {{docs:lua.pdf|pdf}} - Управление сайтом ssau.ru через selenium {{docs:selenium-ssau-ru.pdf}} [[https://github.com/WhitePencil1/OS_LAB|GitHub]] - Установка TLJH {{docs:TLJH-test.pdf}} - Управление сайтом ssau.ru через HTTPS/REST {{docs:rest-ssau-ru.pdf}}[[https://github.com/Contra07/SSAU-HTTP-CHAT|GitHub]] - Реализация ассоциативного массива в виде WSA2 сервера на языке С++{{science:kolbanov.pdf|pdf}}.