如何手工启动X

第一种启动X的方式为xinit

X服务器启动方式为
$xinit /home/my/myapp -- :0

如果你想运行多个程序
编辑/home/my/.xinitrc如下
/home/my/myapp &
xterm &
<你想运行的程序> &
twm      #任何你想运行的window Manager

然后运行
$xinit


当然"-- :0"可以省略,它的作用是表示让xinit同时启动X服务器,并带有参数,“:0”表示该X服务器作为0号服务器启动(给它一个号码,称为显示号,如果启动多个X服务器,可以为每一个指定一个号,在X客户连接时需要指定该号码),xinit这样启动X服务器 $X :0。"--"只有当你写出服务器参数是才需要。写完整应该是
$xinit /home/my/myapp -- /usr/X11R6/bin/X :0
当这样启动时
$xinit /home/my/myapp
xinit会自动使用 -- X :0作为启动参数(需要注意的是,这种情况下,PATH中必须有X这个文件所在的路径,否则,会因找不到文件而失败)。 

如果不启动任何window manager,你的应用程序窗口会粘在屏幕上,无法移动也无法关闭(没有标题栏)。

第二种是xdm

$xdm

### STM32F40x 系列启动文件的相关说明 对于 STM32F40x 系列微控制器,其启动文件通常位于官方提供的标准外设库或 HAL 库中。这些文件主要用于初始化硬件资源并跳转至主程序入口点 `main()` 函数。以下是关于如何获取和使用 STM32F40x 启动文件的信息: #### 1. 官方库中的启动文件位置 启动文件一般存储在 CMSIS(Cortex Microcontroller Software Interface Standard)目录下。具体路径如下: - **CMSIS/Device/ST/STM32F4xx/Source/Templates/** 此目录包含了适用于不同 Cortex-M 内核架构的启动文件,例如针对 ARM Cortex-M4 的启动代码。 常见的启动文件名称为 `startup_stm32f4xx.s` 或者 `.S` 文件[^1]。该汇编文件定义了中断向量表、堆栈指针初始化以及重定位过程等内容。 #### 2. 初步了解启动文件结构 下面是一个典型的 STM32F40x 启动文件 (`startup_stm32f4xx.s`) 的简化版本示例: ```assembly ; Vector Table Mapped to Address 0 at Reset AREA RESET, DATA, READONLY EXPORT __Vectors __Vectors DCD _estack ; Top of Stack DCD Reset_Handler ; Reset Handler DCD NMI_Handler ; NMI Handler DCD HardFault_Handler ; Hard Fault Handler ; Reset handler definition AREA |.text|, CODE, READONLY Reset_Handler PROC IMPORT SystemInit ; Initialize the system clocks BL SystemInit ; IMPORT main ; Call application's entry point B main ; ENDP ``` 上述代码片段展示了基本的中断向量表布局及其对应的处理函数地址分配方式。其中 `_estack`, `SystemInit()`, 和 `main()` 是关键部分,分别代表堆栈顶端、系统时钟初始化函数以及应用程序的主要逻辑起点。 #### 3. 使用 STM32CubeMX 自动生成项目 除了手动查找和配置启动文件之外,还可以利用 ST 提供的图形化工具——STM32CubeMX 来快速生成包含适当设置的新工程项目。通过这种方式可以省去大量繁琐的手工操作步骤,并确保所选组件与目标设备完全兼容[^2]。 当创建基于 STM32F407 (属于 F40x 系列) 的新工程时,STM32CubeMX 将自动导入必要的启动脚本及其他关联资源到指定目录内。 ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值