一个浙大GIS/CS小白的课程学习笔记
这里是一些地理信息科学/计算机科学与技术的笔记/作业(也包含自学的公开课部分,存放一些杂项)的整理,例如各种本科课程的作业、笔记、项目链接,对课程的总结和经验分享,遇到过很棒的技术博客等等…也许可以供您参考;不过我自己属于凭兴趣上课也不是特别在意绩点,所以有些作业可能是水过去的,并不能保证质量一致(警告:仅供参考,请勿抄袭)
建造这个仓库的初衷其实只是为了我自己存储一些资料,以便于在有需要的时候能快速回忆起自己到底学过了哪些东西;
也许您也曾碰到过这样的情况:好像曾经上过某些课程或者阅读过很久价值的文章,但反过来又忘记了具体内容...
不包含教师授课的PPT、非本人回忆的历年卷、以及一些不适合公开的作业内容等等(但可能会给出其他公开链接)
(以后有时间会慢慢把之前的其他的笔记和资料整理上来)
本仓库的目录结构大致以课程分类,可能部分不完全相同(也许可以试着使用一下 github 的搜索功能?):
这部分是一些课程小项目或者大作业的链接,还有一些自己学习过程中写的 demo,有一部分在本 repo 中,一部分在其他 repo:
数据结构:
深度学习:
网络:
图形学:
其他:
GIS:
C++:
计算机系统:
其他:
eunomia-bpf 是一个开源的 eBPF 动态加载运行时和开发工具链,是为了简化 eBPF 程序的开发、构建、分发、运行而设计的,基于 libbpf 的 CO-RE 轻量级开发框架。
使用 eunomia-bpf ,可以:
eunomia-bpf 由一个编译工具链和一个运行时库组成, 对比传统的 BCC、原生 libbpf 等框架,大幅简化了 eBPF 程序的开发流程,在大多数时候只需编写内核态代码,即可轻松构建、打包、发布完整的 eBPF 应用,同时内核态 eBPF 代码保证和主流的 libbpf, libbpfgo, libbpf-rs 等开发框架的 100% 兼容性。需要编写用户态代码的时候,也可以借助 Webassembly 实现通过多种语言进行用户态开发。和 bpftrace 等脚本工具相比, eunomia-bpf 保留了类似的便捷性, 同时不仅局限于 trace 方面, 可以用于更多的场景, 如网络、安全等等。
- eunomia-bpf 项目 Github 地址: https://github.com/eunomia-bpf/eunomia-bpf
- gitee 镜像: https://gitee.com/anolis/eunomia
- 文档网站:https://eunomia-bpf.github.io
操作系统:
某个非常著名的操作系统课程,年轻人的第一次操作系统实践
rcore 开源社区举办的某个活动
Apache APISIX profile 工具: profile and tracking tools for lua and nginx using eBPF
2022 年操作系统大赛决赛一等奖:A lightweight eBPF-based Monitor tool:run ebpf as a service!
无需修改代码,无需繁琐的配置,仅需 BTF 和一个微小的二进制即可启动监控和获取 Eunomia 核心功能:
- 代码无侵入即可开箱即用收集多种指标,仅占用少量内存和 CPU 资源;
- 告别庞大的镜像和 BCC编译工具链,最小仅需约 4MB 即可在支持的内核上或容器中启动跟踪;
让 ebpf 程序的分发和使用像网页和 web 服务一样自然:
- 数百个节点的集群难以分发和部署 ebpf 程序?bpftrace 脚本很方便,但是功能有限?Eunomia 支持通过 http RESTful API 直接进行本地编译后的 ebpf 代码的分发和热更新,仅需约数百毫秒和几乎可以忽略的 CPU 内存占用即可完成复杂 ebpf 追踪器的部署和更新;
- 可以通过 http API 高效热插拔 ebpf 追踪器(约 100ms),实现按需追踪;
提供一个新手友好的 ebpf 云原生监控框架:
- 最少仅需继承和修改三四十行代码,即可在 Eunomia 中基于 libbpf-bootstrap 脚手架添加自定义 ebpf 追踪器、匹配安全告警规则、获取容器元信息、导出数据至 prometheus 和 grafana,实现高效的时序数据存储和可视化,轻松体验云原生监控;
- 提供了丰富的文档和开发教程,力求降低 ebpf 程序的开发门槛;