在linux中是如何运行一个应用程序的?

在linux中是如何运行一个应用程序的?

在Linux中,有一个与执行程序相关的环境变量PATH,非常重要。

比如,在Linux系统中,直接输入命令如ls而没有指定命令的绝对路径/usr/bin/ls,系统也能正确的执行,这是因为 环境变量 PATH 的作用,它指定系统在执行命令时搜索可执行文件的路径。

当用户在终端输入一个命令时,系统会在 PATH 指定的路径中查找该命令的可执行文件。如果找到了,就会执行该命令;如果没有找到,则会提示“命令不存在”的错误信息。

查看环境变量 PATH

# 输入命令

echo $PATH

# 可能返回以下内容

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

例如 PATH 的值是 /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin,那么 系统会首先在 /usr/local/sbin 目录下查找命令,如果没找到,再到 /usr/local/bin 目录下查找,以此类推。

注意事项

不同身份的用户默认环境变量 PATH 不同

环境变量 PATH 是可以被修改的

在不确定的情况下,使用绝对路径来指定某个命令更为准确

在添加自定义目录前,先检查该目录下是否存在与系统命令同名的可执行文件,以免发生冲突,导致系统命令被覆盖或无法正常工作。

谨慎添加不受信任的目录到环境变量 PATH 中,特别是具有系统级权限的目录,这可能会导致恶意软件被执行或系统安全受到威胁。

试想下我们在ubuntu等linux的PC系统上开发应用程序时,都是把应用程序或者驱动程序放到根文件系统下,没有去动uboot或者kernel内核。通常,我们不要随便去操作内核,容易出问题。相对而言,根文件系统更方便操作。

再考虑嵌入式环境下,我们也可以把程序和驱动都放在根文件系统下,然后把根文件系统烧录到开发板,这种情况我们就不用动内核了。同理,如果需要自启动,就在启动脚本里写上对应的执行命令。

自启动具体方法参考:

linux驱动模块开机自动加载,以及应用程序开机自启动 - 小羊实验室 - 博客园 (cnblogs.com)

相关推荐

世界遗产大会
Bet—288365

世界遗产大会

📅 06-28 👁️ 3935
打车软件排行榜前十名,2023打车软件哪个最便宜?
365足球外围平台

打车软件排行榜前十名,2023打车软件哪个最便宜?

📅 06-28 👁️ 9338
古代新疆人是啥人,黄人还是白人?与维吾尔族取汉语族名关系密切
X3720 資料表
365足球外围平台

X3720 資料表

📅 06-29 👁️ 7042
广东籍十大明星,你都认识吗?
365官网国内怎么进

广东籍十大明星,你都认识吗?

📅 06-27 👁️ 9881
macOS如何安装从网上下载的软件?
365足球外围平台

macOS如何安装从网上下载的软件?

📅 06-27 👁️ 5919