当前位置:  开发笔记 > 编程语言 > 正文

我可以在没有任何操作系统平台的情况下执

如何解决《我可以在没有任何操作系统平台的情况下执》经验,为你挑选了2个好方法。

我用谷歌搜索了它,并在某处读到....

是的你可以.这种情况发生在嵌入式系统中

我想不,这是不可能的.任何平台都必须具有操作系统.否则,您的程序本身必须是一个操作系统.无论是软线还是硬线.没有操作系统,您的组件将无法运行.

我是对的还是任何人都能解释我的答案?(我对嵌入式系统没有任何想法...)



1> unwind..:

当然可以.所有(典型的)CPU需求都是电源和对存储器的访问,然后它将执行其硬编码的引导序列.

通常,这将涉及读取一些预定义的地址,将其中的内容解释为指令,并开始运行它们.

这些指令当然可以来自C程序,尽管在这个级别上,在汇编中编写非常早期的阶段(称为bootstrapping)更为常见.

这当然并不意味着,如果我从字面上阅读你的问题标题,那么任何C程序都是以这种方式运行的.如果程序假定有操作系统,但没有操作系统,则无法运行.这应该是非常明显的.



2> pmg..:

您可以在没有操作系统的系统中运行程序......该程序本身不必是操作系统.

想想汽车里面的所有电脑(或者你喜欢的处理器):发动机管理,空调,ABS ......,......
所有这些系统都有一个程序(可能用C语言编写)运行.没有处理器具有OS.

该标准明确区分hosted implementationsfreestanding implementations:

    5.1.2.1 Freestanding environment
1   In a freestanding environment (in which C program execution may take place
    without any benefit of an operating system), the name and type of the
    function called at program startup are implementation-defined. Any library
    facilities available to a freestanding program, other than the minimal set
    required by clause 4, are implementation-defined.
2   The effect of program termination in a freestanding environment is
    implementation-defined.

    5.1.2.2 Hosted environment
1   A hosted environment need not be provided, but shall conform to the
    following specifications if present.
    ...

推荐阅读
郑谊099_448
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有