银河麒麟(linux 架构aarch64) 获取本机所有IP地址

这篇博客介绍了在银河麒麟V10(SP1)aarch64架构下,由于gethostname无法获取IP地址,作者采用读取ifconfig输出的方式来获取IP地址的C++代码。通过popen函数打开ifconfig命令,然后解析其输出,查找“inet”关键字来提取IP地址。代码在loongarch64架构上运行正常,但在aarch64架构上需要使用这种方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

环境:

版本:银河麒麟桌面操作系统V10(SP1)
内核:Linux 5.4.18-35-generic
CPU:Phytium,D2000/8

终端输入 uname -m 查看
架构 aarch64

在windows 上 和 银河麒麟(linux loongarch64) 使用下面的代码获取IP地址:

银河麒麟(linux) gethostname 获取不到IP地址_程序媛zcx的博客-优快云博客_银河麒麟查看ip地址

同样的代码 在银河麒麟(linux 架构loongarch64)可以,但是在 银河麒麟(aarch64)上不可以,于是用读文件的方式获取所有ip地址列表,代码如下:

std::vector<std::string> WHUDP:: getIpList() {
    std::vector<std::string> result;
    char buff[BUFSIZ];
    int i=0,k=0;
    char tmpbuff[1];
    int ret=0;
    FILE * addrFile;
    addrFile = popen("ifconfig", "r");
    memset(buff,0,BUFSIZ);
    while(1) {
        ret = fread(
### 银河麒麟操作系统 AArch64 架构特性与兼容性 #### ARM架构的优势 银河麒麟服务器操作系统(Kylin) V10 arm64 基于ARM架构,在能效和性能方面表现出显著优势。ARM处理器因其低功耗和高性能而闻名,这使得该系统非常适合应用于数据中心、云计算以及边缘计算等领域[^1]。 #### Nginx适配情况 对于运行在此平台上的应用而言,Nginx 1.23.2 for Kylin OS aarch64 提供了一个高效的HTTP及反向代理服务方案。此版本不仅能够很好地适应中国本土的操作环境,还专门针对aarch64架构做了优化处理,从而确保了良好的兼容性和出色的执行效率[^2]。 #### 生态系统的完善程度 在多媒体处理方面,SmartMediaKit系列产品线下的RTSP播放器可以良好地运作于银河麒麟V10之上,无论是x86_64还是arm64架构都能得到支持。这意味着用户可以在不同硬件平台上享受到稳定可靠的实时流媒体传输体验,包括但不限于低延迟播放、较低的资源消耗率以及优秀的音视频同步效果等特性[^3]。 #### 实际部署案例 以EduSoho为例,在银河麒麟V10 aarch64加上TiDB这样的组合环境中成功完成了安装配置工作。通过这种方式建立起来的教学管理系统既具备强大的数据管理能力又拥有灵活的服务端框架支撑,进一步证明了这套操作体系及其所依赖的基础架构具有较高的实用价值和发展潜力[^4]。 ```bash # 示例命令:验证当前使用的CPU架构 uname -m ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值