谷歌编程之夏与 Zephyr RTOS 项目介绍
今年，该项目向 18 岁或以上的任何人开放 —— 不仅限于学生和应届毕业生了。
Zephyr GSoC
今年，该项目向 18 岁或以上的任何人开放 —— 不仅限于学生和应届毕业生了。
![](/data/attachment/album/202207/12/102306u5vlj0ek5llhlkph.jpg)


**谷歌编程之夏**（GSoC）是一个谷歌举办的国际年度项目，每年都在夏季举办。当贡献者们参与并完成一个 [自由开源软件](https://en.wikipedia.org/wiki/Free_and_open-source_software) 的编码项目，[谷歌](https://en.wikipedia.org/wiki/Google) 就会给他们发放 [津贴](https://en.wikipedia.org/wiki/Stipend)。谷歌编程之夏于 2005 年推出，于每年 5 月至 8 月举行。项目创意由参与开源软件开发的主办组织提交，但学生也可以提出自己的项目创意。


今年，该项目向 18 岁或以上的任何人开放 —— 不仅限于学生和应届毕业生了。参与者通过编写软件获得报酬，其 [津贴](https://en.wikipedia.org/wiki/Stipend) 的金额取决于他们所在国家/地区的 [购买力平价](https://en.wikipedia.org/wiki/Purchasing_power_parity)。


**LCTT 译注：以往，这个活动只允许在校学生参与，今年条件放开，只需年龄 18+ 即可，对参与者的贡献时长要求也降低了，尽可能地让更多人参与进来。不过，今年的报名通道在 4 月 19 日就截止了，大家有兴趣的话明年可以关注一下。**


这也是 Zephyr 项目第一次作为 Linux 基金会的项目，参与到谷歌编程之夏中。让我们一起欢迎这些贡献者及其项目吧！


### 项目一：基于 Zephyr 的 Arduino 模块


1 个贡献者（350 小时）。


[Arduino](https://www.arduino.cc/) 是一个流行的框架，它为嵌入式设备编程提供了一个简化的接口。最近，Arduino 采用 mbed OS 作为其一些新设备的基础 RTOS。通过这项工作，他们将 [Arduino Core](https://github.com/arduino/ArduinoCore-API) 作为独立的抽象层，从 [Arduino Core for mbed](https://github.com/arduino/ArduinoCore-mbed) 中分离出来。这为在其他操作系统上利用 Arduino Core 开辟了可能性。


该项目的想法就是创建一个利用 Arduino Core 的 Zephyr 模块，以便开发人员在与 Arduino 兼容的设备上使用 Arduino 框架时，可以使用 Zephyr 作为底层操作系统。对用户的好处包括：


* 可以访问 Arduino API 以及高级 Zephyr 功能
* 得益于 Zephyrs 的设备支持，用户可以选择标准 Arduino 生态系统更广泛的设备
* 能够重复使用 Arduino 工具，如 Arduino IDE 和丰富的库


Arduino Core 使用 LGPL 许可证，Zephyr 使用 Apache 2 许可证。这意味着该项目的开发很可能需要脱离主分支，并在单独的仓库中进行，以保持代码和许可证分离。有关这方面的历史讨论，请参阅 [#22247](https://github.com/zephyrproject-rtos/zephyr/issues/22247)，有关 Arduino 核心架构之前的早期尝试，请参阅 [soburi/arduino-on-zephyr](https://github.com/soburi/arduino-on-zephyr)。


**贡献者的任务是：**


* 实现一个基于 Arduino Core 的准系统模块，可以为任何目标编译（不具备功能性，可能在 QEMU 中）
* 基于 Zephyr，使用 Arduino API 实现一个通用外围设备，例如 [Serial](https://www.arduino.cc/reference/en/language/functions/communication/serial/)
* 以一个物理板为目标，例如 Arduino Zero


**导师：**


[Jonathan Beri](https://www.linkedin.com/in/jonathanberi/) – Golioth 和 Zephyr TSC 的首席执行官 [Alvaro Viebrantz](https://www.linkedin.com/in/alvaro-viebrantz-55119048/) – Golioth 和 Google GDE 的创始工程师


**代码许可证：** LGPL


**贡献者详细信息：**


* 姓名：Dhruva Gole
* 项目博客：<https://dhruvag2000.github.io/Blog-GSoC22/>
* 项目海报：（题图）


**关于贡献者：**


![](/data/attachment/album/202207/12/102234y0kdkkki9j83nk99.jpg)


Dhruva 是一名电气工程专业的本科生。他的兴趣广泛，从嵌入式软件开发到硬件设计，在 SBC、微控制器和嵌入式 Linux 平台方面拥有丰富的工作经验。


### 项目二：Zephyr 的 Apache Thrift 模块


一个贡献者（350 小时）。


[Apache Thrift](https://github.com/apache/thrift) 是一个 [IDL](https://en.wikipedia.org/wiki/Interface_description_language) 规范、[RPC](https://en.wikipedia.org/wiki/Remote_procedure_call) 框架和代码生成器，它抽象出传输和协议细节，让开发者专注于应用逻辑。它适用于所有主流操作系统，支持超过 27 种编程语言、7 种协议和 6 种底层传输方式。最初，它于 [2007 年在 Facebook 开发](https://thrift.apache.org/static/files/thrift-20070401.pdf)，随后与 Apache 软件基金会共享。


![](/data/attachment/album/202207/12/102235wxg17ohiw8wko1kb.png)


![](/data/attachment/album/202207/12/102235ls9vxvcxsxrrr6b9.png)


在 Zephyr RTOS 中支持 Thrift 将使社区受益匪浅。它将带来新的软件和硬件技术、新产品以及云集成的其他方式。 Thrift 也可以用于几乎任何传输，因此，它是 Zephyr 支持的许多不同物理通信层的自然选择。该项目的想法是使概念验证 [Thrift for Zephyr 模块](https://github.com/cfriedt/thrift-for-zephyr) 形成以供上游使用。为此，贡献者必须：


* 对 Thrift 功能（协议、传输）执行额外的集成
* 使用 [supported board](https://docs.zephyrproject.org/latest/boards/index.html) 或 [Qemu](https://docs.zephyrproject.org/latest/guides/networking/qemu_user_setup.html) 编写其他示例应用程序
* 使用 [Zephyr 测试框架](https://docs.zephyrproject.org/latest/guides/test/ztest.html) 编写其他测试并生成覆盖率报告
* 确保模块遵循适当的 [编码指南](https://docs.zephyrproject.org/latest/contribute/coding_guidelines/index.html) 并满足 [模块要求](https://docs.zephyrproject.org/latest/guides/modules.html)
* 将任何必要的改进贡献回 Apache Thrift 项目
* 将任何必要的改进贡献回 Zephyr 项目


**导师：**


* [Christopher Friedt](https://www.linkedin.com/in/christopher-friedt/) – Meta 的 SWE / ASIC FW 和 Zephyr TSC 成员
* [Stephanos Ioannidis](https://www.linkedin.com/in/stephanosio/) – Zephyr CXX 子系统维护者


**代码许可证：** Apache 2.0


**贡献者详细信息：**


* 姓名：Young


**关于贡献者：** Young 是一名通信工程专业的学生，他将攻读计算机工程硕士学位。他兴趣广泛，从前端开发到硬件设计，在 Web、IoT 和嵌入式平台方面拥有丰富的工作经验。2021 年他设计的一款搭载 RISC-V 64 处理器的低成本单板机被多家极客媒体报道。


本文 [Google Summer of Code + Zephyr RTOS](https://www.linuxfoundation.org/blog/google-summer-of-code-zephyr-rtos/) 首发于 [Linux 基金会](https://www.linuxfoundation.org/)。




---


via: <https://www.linux.com/news/google-summer-of-code-zephyr-rtos/>


作者：[The Linux Foundation](https://www.linuxfoundation.org/blog/google-summer-of-code-zephyr-rtos/) 选题：[lkxed](https://github.com/lkxed) 译者：[lkxed](https://github.com/lkxed) 校对：[wxy](https://github.com/wxy)


本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](https://linux.cn/) 荣誉推出

