Chrome University 2018: Chrome OS Virtual Machines 101

BlinkOn
23 Jan 201929:03

Summary

TLDRZack介绍了他在Crostini项目上的工作,该项目旨在扩展Chromebook上可运行的应用程序种类,同时不牺牲安全性。Crostini允许用户在Chromebook上运行Linux应用,最初是为Android开发者设计的,以确保他们的应用在Chromebook上良好运行。项目使用容器化方法,并最终决定使用虚拟机和容器的组合来提高安全性。Zack还讨论了技术细节,包括Crostini背后的架构和组件,以及如何在Chrome OS上实现Linux应用的集成。

The video is abnormal, and we are working hard to fix it.
Please replace the link and try again.

Q & A

  • Crostini项目的主要目标是什么?

    -Crostini项目的主要目标是在不牺牲安全性的前提下,扩展Chromebook上用户可以运行的应用种类。

  • Crostini项目是如何开始的?

    -Crostini项目始于添加Android应用到Chromebook的想法,使用容器化方法,之后考虑进一步扩展到其他类型的应用程序,并提高这些应用程序的安全性。

  • 为什么Crostini项目最终选择了使用虚拟机而不是容器?

    -项目团队意识到,开发者可能会利用工具攻击与Chrome OS应用相同的服务,因此决定使用虚拟机加上容器来提高安全性。

  • Crostini项目在技术选型上遇到了哪些挑战?

    -Crostini项目在技术选型上遇到了安全性问题,现有的虚拟机解决方案如QEMU和VirtualBox等都存在大量的C代码,容易发现漏洞和错误。

  • Crostini项目是如何处理应用程序分发的?

    -项目团队考虑了多种应用程序分发方式,并意识到开发者习惯于自己的方式来分发应用程序,因此需要找到适合Chromebook用户的分发方式。

  • Crostini项目为什么决定专注于开发者?

    -项目团队认为,对于Chromebook类型的设备,开发者使用的工具如Android Studio和ADB等与项目理念相符,因此决定专注于开发者。

  • Crostini项目中的concierge是什么?

    -Concierge是Crostini中的一个管理器,负责管理系统中所有的虚拟机的生命周期。

  • Crostini项目中提到的Maitre D'是什么?

    -Maitre D'是Crostini中的一个初始化进程,负责启动网络并告知concierge虚拟机已成功启动并准备好运行容器。

  • Crostini项目中的Garçon是什么?

    -Garçon是Crostini中的一个守护进程,负责在容器内启动应用程序。

  • Crostini项目如何处理Linux应用的集成和启动?

    -Crostini使用small yad和Verdi Wayland两个包来处理Linux应用的集成和启动,small yad运行在容器内,而Verdi Wayland将Wayland协议从客户端传输到主机。

  • Crostini项目在安全性方面有哪些考虑?

    -Crostini项目在安全性方面考虑了虚拟机和容器的隔离,使用Rust语言编写的cross VM来保证内存安全,以及限制对Chrome OS主机数据的访问。

  • Crostini项目对于X11应用的支持是如何实现的?

    -Crostini项目通过一种安全但有些hacky的方法来支持X11应用,即欺骗应用程序认为它们拥有额外的权限,但实际上并没有。

  • Crostini项目对于硬件访问有哪些限制?

    -Crostini项目限制了硬件访问,不允许访问Chrome OS主机上的数据,也不支持USB外设、GPU和IPv6等。

  • Crostini项目如何处理多个虚拟机同时运行的情况?

    -Crostini项目通过concierge来管理多个虚拟机,每个虚拟机都是一个独立的cross VM实例,concierge会记住每个虚拟机的名称和关联的容器。

  • Crostini项目对于内存和磁盘空间是如何管理的?

    -Crostini项目为每个虚拟机分配系统内存的四分之三,但内存是按需分配的。磁盘空间使用稀疏文件系统格式,只有当用户使用更多数据时才会分配更多的块。

  • Crostini项目是否允许Linux应用访问本地数据?

    -是的,Crostini项目允许Linux应用访问本地数据,但不允许访问Chrome OS主机上的数据。

Outlines

plate

此内容仅限付费用户访问。 请升级后访问。

立即升级

Mindmap

plate

此内容仅限付费用户访问。 请升级后访问。

立即升级

Keywords

plate

此内容仅限付费用户访问。 请升级后访问。

立即升级

Highlights

plate

此内容仅限付费用户访问。 请升级后访问。

立即升级

Transcripts

plate

此内容仅限付费用户访问。 请升级后访问。

立即升级
Rate This

5.0 / 5 (0 votes)

相关标签
Crostini项目Chromebook应用扩展安全性虚拟机Linux开发者工具Android应用技术演进用户体验系统架构