Бакалавриат ZJU Computer/Geographic Information Science Base
Дорога длинная и трудная
Вот несколько примечаний/домашнее задание для географических информационных наук/компьютерных наук и техники (также включают в себя открытые курсы самообучения, хранение некоторых разных предметов), таких как домашняя работа, заметки, ссылки на проекты для различных курсов бакалавриата, краткое изложение и опыт обмена курсами, Я столкнулся с большими техническими блогами и т. Д., Может быть, это можно использовать для вашей справки; Последовательность качества (предупреждение: только для справки, пожалуйста, не копируйте)
Первоначальное намерение построить этот склад на самом деле состоит в том, чтобы просто хранить некоторую информацию也许您也曾碰到过这样的情况:好像曾经上过某些课程或者阅读过很久价值的文章,但反过来又忘记了具体内容... чтобы я мог быстро вспомнить, что я узнал, когда мне это нужно;也许您也曾碰到过这样的情况:好像曾经上过某些课程或者阅读过很久价值的文章,但反过来又忘记了具体内容...
Он не включает PPT, преподанный учителями, последние годы, которые не отозваны мной, и некоторое домашнее содержание, которое не подходит для публичного раскрытия и т. Д. (Но могут быть даны другие общественные связи)
(В будущем я постепенно разберу другие предыдущие заметки и информацию, если у меня будет время)
- Если это поможет вам, вы также можете помочь со звездой
- Но на самом деле, я лично думаю, что рисование домашней работы - неплохой способ обучения, по крайней мере, это лучше, чем ничего не делать ...
- Мой личный стек технологий - это направление C/C ++/Rust.
Оглавление
- Бакалавриат ZJU Computer/Geographic Information Science Base
- Дорога длинная и трудная
- Оглавление
- Структура организации папок
- Некоторые домашние задания и ссылки на проекты (о некоторых простых вещах в школе)
- В настоящее время эксплуатационный проект с открытым исходным кодом: Eunomia-BPF
- Разное, такие как открытые занятия/события/соревнования
- Блог/бумага/некоторые другие разные
Структура организации папок
Структура каталога этого репозитория примерно классифицируется по курсам и может быть частично не то же самое (возможно, вы можете попробовать использовать функцию поиска GitHub?):
- примечания
- Принцип компиляции
- Компьютерная сеть (включая географические информационные системы и сетевые технологии)
- Введение в компьютерные системы
- Язык программирования
- Темы программирования (H)
- Объектно-ориентированное программирование
- Mini-Collection Java/C (я взял класс, но кажется, что ничего не осталось)
- Структуры данных и алгоритмы (включая основные структуры данных, расширенные структуры данных и анализ алгоритмов)
- Вопрос о литкоде
- PTA/PAT Проблема решение
- Реализация некоторых из моих собственных структур данных
- база данных
- Компьютерная графика
- Ай
- Компьютерная архитектура (включая компьютерную композицию)
- Операционная система
- Другие крупные курсы
- Разнообразный
Некоторые домашние задания и ссылки на проекты (о некоторых простых вещах в школе)
Эта часть является ссылкой на некоторые небольшие курсовые проекты или домашние задания, а также некоторые демонстрации, написанные во время учебного процесса.
Демо
Структура данных:
- Поисковая система текста на основе обратного индекса
- Геопространственный индекс: кривая Quadtree/Hilbert/z -кривая
- Постоянное дерево AVL, внедренное ржавением
Глубокое обучение:
- Поиск обрезки, чтобы реализовать AI черно -белых шахмат
- Классификация мусора на основе сверточной нейронной сети
- Алгоритм адаптивного среднего фильтрации для удаления шума соли и перца
сеть:
- Реализовать чат -протокол на основе интерфейса сокета
- Легкий веб -сервер
Графика:
- Трехмерная солнечная система
- Простой программный трассировщик трассировки лучей
другой:
Проект
ГИС:
- ГИС Программирование: Hubei Epidemic Data Special System https://github.com/yunwei37/covid-19-arcengine
- Геопространственная база данных: платформа визуального интерактивного анализа веб-сайта для эпидемических данных COVID-19 https://github.com/yunwei37/covid-19-nlp-vis
C ++:
- Объектно-ориентированное программирование: онлайн-карточная игра Uno LAN на основе разработки QT https://github.com/yunwei37/uno-game-ood
- Комплексная практика курса II: C ++ Инженерная практика: OpenGL реализует простую игру с песочницей, похожая на MC https://github.com/yunwei37/mc
- Сервер, написанный с использованием c ++ 20 coroutines и io_uring
Компьютерная система:
- Композиция компьютера: Ассемблер/Disassembler/эмулятор графических инструкций MIPS MIPS, реализованных QT https://github.com/yunwei37/mips-c-zju
- Компьютерная архитектура: мультицикл ЦП-проектирование Компьютерной архитектура Дизайн многоцелевого процессора
- Компьютерная архитектура: проектирование процессора конвейера.
- Операционная система: простое экспериментальное ядро, написанное в Rust (оригинальная лаборатория была написана в C, я изменил его на Rust) https://github.com/yunwei37/linux-0.11-rs
другой:
- Простая практика блокчейна: построение блокчейна с нуля с ржавкой
В настоящее время эксплуатационный проект с открытым исходным кодом: Eunomia-BPF
Eunomia-BPF-это время выполнения динамической загрузки EBPF с открытым исходным кодом.
Используя Eunomia-BPF, вы можете:
- При написании программ или инструментов EBPF записывается только код ядра для автоматического получения информации об экспорте ядра;
- Использовать WASM для разработки интерактивных программ пользователя, управления загрузкой и выполнением всей программы EBPF в виртуальной машине WASM и данных, связанных с процессом;
- Eunomia-BPF может упаковать предварительные программы EBPF в общие модули JSON или WASM, распределенные по версиям архитектуры и ядра, а также могут загружаться и работать динамически без перекомпиляции.
Eunomia-BPF состоит из сборника инструментов и библиотеки времени выполнения. Код для легкой сборки. Когда вам нужно написать код пользовательского режима, вы также можете использовать Webassembly для достижения разработки пользовательского режима на нескольких языках. По сравнению с инструментами сценариев, такими как BPFTrace, Eunomia-BPF сохраняет аналогичное удобство и не ограничивается трассировкой, но может использоваться в большем количестве сценариев, таких как сеть, безопасность и т. Д.
- Eunomia-bpf Project Github Адрес: https://github.com/eunomia-bpf/eunomia-bpf
- Gitee Mirror: https://gitee.com/anolis/eunomia
- Веб-сайт документа: https://eunomia-bpf.github.io/
Разное, такие как открытые занятия/события/соревнования
Операционная система:
Старая версия MIT 6.828 Labs в 2018 году: 1-6:
Очень известный курс операционной системы, первая практика операционной системы для молодых людей
OS Summer of Code 2020
Мероприятие, проводимое сообществом с открытым исходным кодом RCORE
nginx-lua-ebpf-toolkit
Инструменты профиля Apache Apishix: Инструменты профиля и отслеживания для LUA и NGINX с использованием EBPF
Еуномия
Первый приз в финале конкурса операционной системы 2022 года: легкий инструмент монитора на основе EBPF: запустить EBPF в качестве услуги!
- Нет необходимости изменять код, нет необходимости в утомительной конфигурации, только BTF и крошечный двоичный файл для начала мониторинга и получения основных функций Eunomia:
- Код может быть собран из коробки без вторжения, потребляя лишь небольшой объем памяти и ресурсов процессора;
- Попрощайтесь с огромным зеркалом и компиляцией BCC, и для начала отслеживания на поддерживаемых ядрах или контейнерах требуется всего около 4 МБ на поддержанных ядрах или контейнерах;
- Сделайте распространение и использование программ EBPF такими же естественными, как веб -страницы и веб -сервисы:
- Трудно ли распространять и развернуть программы EBPF в кластерах из сотен узлов? Сценарий BPFTrace удобен, но имеет ограниченную функциональность? Eunomia поддерживает распределение и горячее обновление локально скомпилированного кода EBPF через HTTP Restful API, и может завершить развертывание и обновление сложных трекеров EBPF почти в сотнях миллисекундов и почти незначительной следы памяти процессора;
- Отслеживание по требованию может быть достигнуто через HTTP API с эффективным трекером EBPF Hot Swap (около 100 мс);
- Предоставьте новичку, удобную для новичков структуру мониторинга EBPF:
- По крайней мере, тридцать или сорок строк кода должны быть унаследованы и изменены, вы можете добавить пользовательские трекеры EBPF на основе каркасов LIBBPF-bootstrap на эуномии, соответствовать правилам тревоги безопасности, получение мета-информации о контейнере, экспорта в Прометею и Графана и достижение эффективного. время.
- Обеспечивает богатые учебники по документации и развитию, стремясь снизить порог разработки программ EBPF;
Блог/бумага/некоторые другие разные
- Портал: мой блог
- Чжиху: Юнвей Жиху