Linux-知识点1-$-POSIX等

POSIX 的定义与作用

POSIX(Portable Operating System Interface)是由 IEEE 制定的操作系统接口标准,旨在为不同 UNIX 系统提供统一的 API 规范。它定义了文件操作、进程控制、线程管理、信号处理等核心功能的接口行为,确保应用程序在不同兼容系统上可移植。

POSIX 与进程间通信(IPC)

POSIX 标准包含多种进程间通信机制,如:

  • 消息队列mq_* 系列函数)
  • 共享内存shm_* 系列函数)
  • 信号量sem_* 系列函数)
    这些接口提供跨平台的 IPC 实现方式,避免依赖特定系统的私有 API。

$ 符号的作用

在 Bash 中,$ 主要用于变量引用和命令替换:

  • 变量引用$var${var} 获取变量值。
  • 命令替换$(command)command 执行命令并替换为输出结果。

将逻辑翻译为 Bash 命令

链接库(-lxxx)的位置规则

在 GCC 或 Clang 编译命令中,-lxxx 必须放在目标文件(.o)之后,因为链接器按顺序解析依赖:

bash 复制代码
gcc main.o -lxxx -o program  # 正确  
gcc -lxxx main.o -o program  # 可能报未定义符号错误  

链接器从左到右处理文件,若库在前,其符号未被后续目标文件引用则可能被丢弃。

关键注意事项

  • POSIX 标准通过头文件(如 <unistd.h>)和库函数提供,需在代码中包含对应头文件。
  • Bash 脚本中变量赋值无需 $,引用时才需要:var=value vs echo $var
  • 动态库链接时可通过 LD_LIBRARY_PATH 指定路径,但编译时仍需正确排列 -l 参数。
相关推荐
DFT计算杂谈2 小时前
无 Root 权限在 Tesla K80 零门槛部署 DeepSeek 大模型
linux·服务器·网络·数据库·机器学习
Zhang~Ling3 小时前
从 fopen 到 struct file:从零开始拆解 Linux 文件 I/O
linux·运维·服务器
DeeplyMind3 小时前
Linux 深入 per-VMA lock:Linux 缺页路径如何摆脱 mmap_lock
linux·per-vma lock
爱写代码的森3 小时前
蒙三方库 | harmony-utils之FileUtil文件重命名与属性查询详解
linux·运维·服务器·华为·harmonyos·鸿蒙·huawei
XMAIPC_Robot4 小时前
软硬协同实时控制|RK3588业务调度+FPGA硬件时序,ethercat实现半导体设备微秒级响应(125us)
linux·arm开发·人工智能·fpga开发
重生的黑客5 小时前
Linux 进程优先级、切换与调度:从孤儿进程到 O(1) 调度模型
linux·运维·服务器·进程优先级·nice
骑上单车去旅行6 小时前
MD5校验对比脚本
linux·服务器·windows
平生幻6 小时前
Linux 常用命令
linux
ShirleyWang0127 小时前
让headlamp控制台能访问
linux·服务器·python·k8s·k3s
liuccn8 小时前
Linux 存储系统:LVM 与直接分区
linux·运维