github上Fuchsia项目相关文章翻译 - fuchsia-mirrormagentaREADME.md

    xiaoxiao2026-08-31  9

    版权声明:本文为博主原创文章,未经博主允许不得转载。

    Magenta

    Magenta is the core platform that powers the Fuchsia OS. Magenta is composed of a microkernel as well as a smallset of userspace services, drivers, and libraries necessary for the system toboot, talk to hardware, load userspace processes and run them, etc. Fuchsia builds a much larger OS on top of this foundation.   Magenta是供Fuchsia系统运行的核心平台。Magenta包含以下组成部分:一个微内核(又称为微核心,是一个最小化的软件程序,它可以提供完整的操作系统功能);一部分用户服务程序;驱动程序;以及一些用于系统启动、硬件交互、加载和运行用户进程所必须的库文件。而Fuchsia在Magenta的基础上构建了一个更为庞大的操作系统。    The Magenta Kernel is a medium-sized microkernel. It provides services (via syscalls) to manage processes, threads,virtual memory, inter-process communication, waiting on object state changes, and locking (via futexes).   Magenta是一个中型的微内核。她通过系统调用(“系统调用”是进程与内核的通信方式,用于进程向内核申请更高权限的服务)的方式提供了以下服务:进程管理、线程、虚拟内存、进程间通信、对象状态变化监听、和基于Futex的锁机制(Futex是一种用户态和内核态混合的同步机制)。    Currently there are some temporary syscalls that have been used for early bringup work, which will be going awayin the future as the long term syscall API/ABI surface is finalized. The expectation is that there will be 10s, not 100s of syscalls.   在系统早期的开发过程中,会存在一些临时的系统调用,而当最终的系统调用接口全部完成后,这些临时系统调用将不再使用。系统完成后,我们希望只存在几十种,而不是上百种系统调用。    Magenta syscalls are generally non-blocking. The wait (one, many, set) family of syscalls, ioport reads, and thread sleep being the notable exceptions.   在Magenta的中,除了wait()、IO读取、和线程睡眠之外,大部分系统调用都是非阻塞的。    This page is a non-comprehensive index of the magenta documentation.   以下是Magenta相关文档目录。 Getting Started Relationship with LK Kernel Objects Process Objects Thread Objects Handles Futexes System Calls

      Fuchsia是谷歌新近发布的开源项目,github上有源码下载,我会慢慢接触学习,初期计划是尽量将项目自带的文档翻译成中文,帮助国内程序员中英语羞涩的朋友阅读,很多高手受限于英语能力,不能加入一些开源项目。   文档的翻译会根据项目中不同模块进行,每翻译完一部分模块的文档,我会尽量阅读一下对应的源码,并尽量做些注释,不奢望能贡献代码,只当丰富自己的知识。   本文是Fuchsia的内核部分Magenta的简介,详细介绍要后续完成。   有问题可以留言交流。

    转载请注明原文地址: https://ju.6miu.com/read-1311748.html
    最新回复(0)