OpenHarmony开发者论坛

标题: 【TOOLS使用】用IPOP调试 OpenHarmony 内核 [打印本页]

作者: 诚迈_雨哥    时间: 2023-12-21 15:17
标题: 【TOOLS使用】用IPOP调试 OpenHarmony 内核
[md]# 前言

我使用的是 IPOP V4.1,基于OpenHarmony开源系统和RK3568开发板,在PC上运行此软件,查看运行、错误日志来调试内核。作为网络、嵌入式式内核调试的必备工具,建议同学珍藏。IPOP运行在PC上,操作系统是 Windows10 x64。
目前使用到的功能不及其十分之一,其强大功能驱使我竟然花了25两银子在百度文库下载了官方文档《网络工程师调试工具IPOP使用手册.docx》,现在奉献给大家可免费下载。看到这里您是否感激涕零,请关注、点赞收藏就行了😄 。

# 致敬

IPOP软件工具箱是被广泛使用的、纯绿色、汉化软件。在这个下载什么、使用什么都要钱的时代,仍然有这么一款强大的、久经考验的软件工具,同时因为其朴实无华让我好奇出自哪里?经过一番定位,出现了几个可能的源头。不管是谁,我依然怀着无比崇敬的心情致敬!
出处1:中国最强创新公司,到处都在强调其旗号。
出处2:IPOP(IP Over P2P)工具包是一个开源的软件项目,旨在提供一种轻量级且易于配置的虚拟专用网络(VPN)解决方案。它通过使用点对点(P2P)网络协议,将多个PC连接到一个虚拟的私人网络中,实现了在不同网络间的安全通信。
出处3:绿盟科技,有官方使用手册。
出处4:软件本身信息。

![verstion_info.png](https://forums-obs.openharmony.c ... vev242c61mc3nx1.png "verstion_info.png")

# 一、调试OpenHarmony 内核、硬件IPOP工具说明

## 1.1. 概述

IPOP软件是一款功能强大、绿色免费、界面朴实无华、实用性强的网络IP专用工具的集合。它基本上包含了IP地址动态性绑定、MAC地址改动、帖子配备、流量监测、端口号等各个领域,功能齐备,特别适合OpenHarmony内核、互联网开发和测试工程师应用。

## 1.2. 网络方面的功能

1. IP地址动态性绑定功能;
2. 路由器记录查询和配备功能;
3. MAC地址记录查询、变更功能;
4. MAC、服务器信息内容扫描仪功能;
5. MAC地址与生产厂家相匹配表;
6. 该设备互联网报文格式统计分析功能;
7. 该设备端口号目录、远程控制端口扫描器功能;
8. 常用端口一览表;
9. 端口映射功能;
10. 网卡流量监控和标示功能;
11. 该设备IP报文格式捕捉和推送功能;
12. 多用户telnet/ssh/sftp/ ftp/ dos/串口通信维护保养终端设备专用工具,适用IPV6;
13. TCP、UDP、Telnet、FTP、TFTP、WEB、群聊通讯等网络服务器功能。

# 二、安装USB转COM设备驱动

## 2.1. 连接电缆

一头连接PC USB端口,另一头链接开发板COM端口。开发板上运行开源系统主线版本,连接端口如白色线缆所示,如果联通就会亮红灯

![red_ligth.png](https://forums-obs.openharmony.c ... b2aj8jhzxb8q8xq.png "red_ligth.png")

![com.png](https://forums-obs.openharmony.c ... ggug33bgbr8wgu3.png "com.png")

## 2.2. 安装USB转COM驱动

CDM212364_Setup为当前使用的FTDI芯片USB转COM口驱动,一路确定即可完成,有时安装完成后需要重启PC。驱动安装包从附件下载。

## 2.3. 在设备管理器查看驱动是否安装成功

驱动未安装成功如图片左边所示,成功则如右边所示,会出现”USB Serial Port(COM) ”字样。

![compare_connect.PNG](https://forums-obs.openharmony.c ... vgfxtd2xgs4giqt.png "compare_connect.PNG")

# 三、用IPOP调试 OpenHarmony 内核

采用USB转COM端口调试OpenHarmony内核、硬件

## 3.1. 操作步骤

双击打开 IPOP软件,选择终端工具→新建连接①→选择类型②(和设备管理器里面显示的一致)→波特率③→自动存盘④→存盘目录⑤→在连接列表选择对应连接→确定⑥,步骤如下图所示,蓝色背景不断刷新的信息就是系统运行的日志。

![step.png](https://forums-obs.openharmony.c ... dirzuihkiekdcld.png "step.png")

## 3.2. 注意事项

* 如果连接列表中不存在对应连接,在连接名称中填入和选择类型相同的名称。
* 避免频繁换行不好看,将“每行列数”设置为132。
* 自动保存的日志,在存盘目录可以看到。

![log-directory.PNG](https://forums-obs.openharmony.c ... ygbwyd3y9f3yflx.png "log-directory.PNG")

## 3.3. 典型按钮功能说明

当鼠标悬停在每个按钮上时,会自动显示其功能提示。

* **绿色灯图标**:正在存盘,单击变为红灯则停止存盘。此功能方便我们在条件就绪的情况抓取日志片段。
* **剪刀图标**:清空当前日志。

## 3.4. 添加快捷输入按钮

如果需要向开发板发送较长或多个指令时,避免手动输入,可以自定义功能按钮,确定后会出现在工具条的末尾。用时单击即可。

![custom_button.PNG](https://forums-obs.openharmony.c ... wrzyuprokwiwgg4.png "custom_button.PNG")

# 四、dmesg 用法

在开源系统中,了解系统的内核信息和故障诊断是至关重要的。而dmesg指令就是一个强大的工具,它可以帮助我们查看系统内核的日志信息,了解系统的运行状态和故障原因。

## 4.1. dmesg指令简介

dmesg指令是一个在开源系统中查看内核日志的实用工具。它允许我们查看系统内核的输出消息,包括引导信息、硬件检测、设备驱动程序和系统错误等。通过使用dmesg指令,我们可以追踪系统启动过程中的事件,排查故障和问题。

## 4.2. 查看系统内核日志

使用dmesg指令可以轻松查看系统的内核日志。只需在终端中输入以下命令:`dmesg`
命令执行后,将显示最新的内核日志信息。日志可能包含各种关于系统硬件、设备驱动程序和内核模块的消息。您可以通过滚动终端窗口或使用管道命令进行过滤来查看完整的日志。

## 4.3. 过滤和搜索内核日志

dmesg指令支持使用管道命令结合其他工具对内核日志进行过滤和搜索,以便更精确地查找特定的信息。以下是一些常用的过滤和搜索技巧:

* 过滤特定关键字
  使用grep命令结合dmesg指令,可以过滤出包含特定关键字的日志信息。例如,以下命令将只显示包含"error"关键字的日志:`#dmesg | grep error`
* 显示最新的N行日志
  使用tail命令结合dmesg指令,可以显示最新的N行日志。例如,以下命令将显示最新的10行日志:`#dmesg | tail -n 10`
* 按时间戳排序日志
  使用sort命令结合dmesg指令,可以按时间戳对日志进行排序。例如,以下命令将按时间戳从新到旧排序日志:
  `#dmesg | sort -r`

# 五、设置内核日志打印等级

当系统崩溃修复时,会产生大量系统日志,不便于关键信息获取,通过修改系统日志打印级别,可突出所需级别的日志信息,便于查找。

## 5.1. 查询串口日志级别

在OS执行cat /proc/sys/kernel/printk命令,返回信息中的“7”表示串口日志级别:

```
# cat /proc/sys/kernel/printk
7      4         1        7
```

## 5.2. 修改串口日志级别

该方法只对当次运行有效,OS重启后串口日志级别恢复为配置文件定义的级别。
在OS执行echo N > /proc/sys/kernel/printk命令,N表示要设置的串口日志级别。

```
# echo 6 > /proc/sys/kernel/printk
# cat /proc/sys/kernel/printk
6       4         1        7
```

## 5.3. 相关串口日志级别说明

| Level | Name         | Description                                                            |
| ----- | ------------ | ---------------------------------------------------------------------- |
| 0     | KERN_EMERG   | 紧急消息。系统崩溃之前提示,表示系统已不可用。                         |
| 1     | KERN_ALERT   | 报告消息。表示必须立即采取措施。                                       |
| 2     | KERN_CRIT    | 临界消息。通常涉及严重的硬件或软件操作失败。                           |
| 3     | KERN_ERR     | 错误消息。串口日志的默认级别。驱动程序常用 KERN_ERR 来报告硬件的错误。 |
| 4     | KERN_WARNING | 警告消息。对可能出现问题的情况进行警告。                               |
| 5     | KERN_NOTICE  | 正常但又重要的消息。用于提醒,常用于与安全相关的消息。                 |
| 6     | KERN_INFO    | 提示消息。如驱动程序启动时,打印硬件消息。                             |
| 7     | KERN_DEBUG   | 调试消息。设置此级别会打印所有日志消息。                               |

# 六、附件

## 6.1.参考链接

1. 报文常用测试工具-----IPOP V4.1https://www.cnblogs.com/LiuYanYGZ/p/17436537.html
2. IPOP 使用详解 (附IPOP工具包) https://www.syunz.com/3468.html

## 6.2.附件下载

1. 网络工程师调试工具IPOP使用手册.docx
2. usb2com driver
3. IPO_4.1
[/md]
作者: 诚迈_雨哥    时间: 2023-12-21 15:20
文档中涉及的软件工具、使用手册和驱动安装包




欢迎光临 OpenHarmony开发者论坛 (https://forums.openharmony.cn/) Powered by Discuz! X3.5