直接回答
大量存在。 絕大多數 Linux 服務端程序 (Web 服務器、數據庫、消息隊列、容器運行時、監控代理、嵌入式固件) **完全不依賴 Qt**,直接使用 C/C++ 調用 Linux 系統調用 (man 2) 與 C 庫 (glibc/musl)。
典型場景
- 高性能網絡服務:Nginx、Redis、Memcached、Envoy、gRPC C core — 僅用 epoll/io_uring、非阻塞 I/O、內存管理。
- 系統級組件:systemd、containerd/runc、kubelet、eBPF 探針 — 深度依賴 cgroup、namespace、netlink、perf_event。
- 嵌入式/物聯網:裸機/RTOS/Linux 精簡發行版 (Buildroot、Yocto) — 無顯示服務,直接操作 GPIO、I2C、SPI、UART (/dev/*)。
- 存儲/文件系統:Ceph、RocksDB、LevelDB、ext4/xfs/btrfs 內核模塊 — 塊設備 I/O、頁面緩存、日誌結構。
Linux 「截斷 API」等價操作
Windows SetFilePointer + SetEndOfFile → Linux ftruncate(fd, length) / truncate(path, length) (系統調用 SYS_truncate/SYS_ftruncate)。
學習路徑
- 《UNIX 環境高級編程》(APUE) — 系統調用權威教材。
- 《Linux 內核設計與實現》 — 理解內核視角。
- man 7
syscalls、epoll、io_uring、cgroups、namespaces。
- 閱讀開源項目源碼:
redis.c、nginx.c、libuv。