带独立应用程序的嵌入式Linux

带独立应用程序的嵌入式Linux,linux,linux-kernel,embedded-linux,Linux,Linux Kernel,Embedded Linux,我想让只运行一个应用程序的Linux操作系统成为一个全屏,在启动或标题栏上不显示任何登录窗口,也不显示最小化/最大化/关闭按钮 有没有办法做到这一点?它是嵌入式平台,我已经为它构建了Linux操作系统,我也有应用程序。简而言之,X系统非常灵活 系统启动时,将执行以下步骤: 加载并运行内核(以及相关的initrd,如果有的话,但与此无关) 启动初始化(进程1) 启动系统服务、网络等 启动X服务器 启动窗口管理器(负责调整窗口大小等的应用程序) 启动您的应用程序 您需要做的是,首先禁用GUI登录和会

我想让只运行一个应用程序的Linux操作系统成为一个全屏,在启动或标题栏上不显示任何登录窗口,也不显示最小化/最大化/关闭按钮


有没有办法做到这一点?它是嵌入式平台,我已经为它构建了Linux操作系统,我也有应用程序。

简而言之,X系统非常灵活

系统启动时,将执行以下步骤:

  • 加载并运行内核(以及相关的initrd,如果有的话,但与此无关)
  • 启动初始化(进程1)
  • 启动系统服务、网络等
  • 启动X服务器
  • 启动窗口管理器(负责调整窗口大小等的应用程序)
  • 启动您的应用程序
  • 您需要做的是,首先禁用GUI登录和会话(最容易禁用X)-您将能够通过控制台终端登录(您始终可以使用Ctrl-Alt-F1访问它)

    然后,沿着

    X &
    DISPLAY=:0 ./yourapp.exe
    
    如果你的应用程序能让自己全屏显示,那就是了。 把这个添加到你的启动脚本中,你就在那里了


    更多解释

    窗口管理器的用途。。是管理windows。就这么简单:)

    基本上,典型的X会话有3个组件

    • X服务器——一种软件,它围绕硬件(GPU驱动程序、键盘、鼠标、触摸屏等)提供一个抽象层。它有一个windows的概念——X客户机可以进入的区域
    • X客户机-其他一切。如果你的软件画了什么东西,它很可能就是一个。web浏览器等也是如此。连接到X服务器并绘制
    • 窗口管理器-一种特殊类型的X客户端,此软件提供控制屏幕上窗口的功能。它通常绘制窗口装饰(最小化、最大化按钮),有时绘制任务栏等
    你可以随心所欲地完全混合和搭配它们。更简单、最简单的窗口管理器,如my
    ratpoison
    ,对于许多原型嵌入式系统,我更喜欢它,它只有全屏窗口的概念,并且可以在全屏应用程序之间切换(想想Windows8 Metro)。其他人绘制窗口装饰,并允许重叠和层叠窗口


    由于开发一个窗口管理器是一项简单而模块化的任务,因此实际上有数百个窗口可供选择。您也可以选择完全不使用,此时您的窗口必须自行管理(默认情况下,您将无法移动它们)。许多应用程序都尊重
    -geometry 1920x1080+0+0
    参数,告诉它们在0,0角打开一个分辨率为1920x1080的窗口-实际上是全屏

    你的申请是什么?这个问题非常广泛,但是。。有类似Qt/Embedded的东西。您可以手动启动X,点显示=:0 whateverXapp,并使用正确的参数使其全屏显示。。。你可以使用简约的窗口管理器(我喜欢这些任务)。我的应用程序是基于家庭自动化的,是用Linux编写的。我想你已经用Mono在Linux上构建了它,并且运行良好?是的。一切都很顺利。请在你的帖子的评论中包含这些额外的信息(我想你可以编辑它),我会回答你的问题:)还有一件事。这也会打开web浏览器以显示该界面。那么,它还在工作吗?如果您希望以任何方式(前台/后台,最大化)管理窗口,您可能需要启动一个最低限度的窗口管理器。。或者你可以让你的浏览器也这么做。我不明白。请详细说明。所以鼠药,根据你的说法是最好的。正确的?它是否能够处理高端图形[我的嵌入式硬件支持高端图形。]它不需要支持任何图形。它在做窗口管理,这方面非常初级。图形部分位于客户端(应用程序或浏览器)和X服务器之间。所有组件都是独立的。