gpt4 book ai didi

mobile - 单个开发人员是否有可能为安卓手机编写一个简单的移动操作系统?

转载 作者:行者123 更新时间:2023-12-03 22:58:57 25 4
gpt4 key购买 nike

很难说出这里问的是什么。这个问题是模棱两可的、模糊的、不完整的、过于宽泛的或修辞的,无法以目前的形式得到合理的回答。如需帮助澄清这个问题以便重新打开它,visit the help center .




9年前关闭。




作为一个单独的开发人员,我是否有可能为 Android 手机编写一个操作系统,该操作系统可以通过 Logo 打开,并有一个用于文本输入的简单屏幕键盘,它可以接收文本命令并可以自拍并保存它们?
我该如何构建它以及它可能需要多长时间?

最佳答案

如果您的意思是从头开始:这当然是可能的。但这需要大量的人力资源:-)。手机制造商通常有数百名程序员,但它的软件经常充满错误:-)。

简而言之,您可以说手机中通常有两个软件模块:

  • 处理显示、声音和用户输入的“UI OS”。
  • 处理移动网络通信的“基带操作系统”。

  • UI OS 可以是 Linux 或其他更简单的操作系统。 vanilla Linux 内核几乎可以在任何现代手机上轻松运行。

    第二部分是基带操作系统。这部分通常需要实时属性才能处理与移动网络的通信,因为在特定“时隙”中发送数据时需要精确的时间。

    只有一个问题:你需要找到一个“开放硬件手机”来安装操作系统。电信运营商通常要求对当今的手机采取严格的安全措施,因此很难在市面上的手机上编写自己的操作系统。此外,您还需要访问电路板原理图、芯片详细信息等,这不会发生 :-)。

    一个想法可能是 OpenMoko,它是一个“开放电话项目”: http://wiki.openmoko.org/wiki/Main_Page或 Google Android 项目。

    此外,当今手机中使用的 CPU,例如 TI OMAP,通常可以通过开发板获得,例如 http://www.igep-platform.com/index.php?option=com_content&view=article&id=46&Itemid=55

    这里的缺点是该板不包含用于处理与移动网络的通信的基带芯片。

    编辑:
    关于为手机构建和运行软件。手机启动时会发生什么显然取决于硬件平台,但可能会发生类似的事情(对于大多数嵌入式系统也是如此):
  • ASIC(包含 CPU)启动、自我重置并开始执行所谓的 Bootstrap (硬编码到 ASIC 中)。
  • 引导带尝试设置连接到 ASIC 的闪存芯片。
  • 引导带将 SW 从闪存加载到芯片的 SRAM(ASIC 芯片上的集成 RAM)。
  • SRAM 中的 SW 设置 SDRAM(时序等)并将“OS”(或您想要的任何 SW)从闪存加载到 SDRAM 中。
  • SRAM 中的 SW 将 CPU 中的内部指令指针设置为 SDRAM,因此 ASIC 的 CPU 内核开始在 SDRAM 中执行。
  • SDRAM(“操作系统”)中的软件设置定时器、中断、内存管理或任何需要的东西。
  • SW可以是任何东西,无限的for循环,完整的操作系统,或者只是一个SW将一些LED拉高或拉低。

  • 如果 ASIC 有一个 NOR 闪存,它可以直接执行,而无需先将 SW 上传到 SDRAM。

    SDRAM 中的操作系统可以是普通的 Linux 内核。 Linux 内核唯一需要的是一些信息 block ,例如内存大小、该内存的物理位置等(一种方法是使用 ATAG 列表)。当然,它还需要了解 ASIC 的一些内部结构,这将被添加到 Linux 内核中。但是当今市场上的大多数芯片已经存在于 Linux 内核中。例如,诺基亚为 TI OMAP3430 适配贡献了很多代码,这可以在内核源代码本身(arch/目录或类似目录)中看到。我不确定诺基亚的哪些手机使用该芯片,但它可能是高端 Linux 和 Symbian 手机。

    给出比上面更详细的答案需要几页纸,所以最好的办法是使用你在 SO 上得到的答案,并尝试使用它从其他地方获取更多信息。

    祝你好运 :-)

    关于mobile - 单个开发人员是否有可能为安卓手机编写一个简单的移动操作系统?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2205669/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com