one_bits
码龄12年
关注
提问 私信
  • 博客:38,159
    社区:1
    38,160
    总访问量
  • 8
    原创
  • 1,428,371
    排名
  • 31
    粉丝

个人简介:士有陪乘,告奔走也

IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:江苏省
  • 加入CSDN时间: 2012-08-03
博客简介:

lsy673908720的博客

查看详细资料
个人成就
  • 获得13次点赞
  • 内容获得8次评论
  • 获得120次收藏
创作历程
  • 2篇
    2023年
  • 1篇
    2022年
  • 5篇
    2021年
  • 2篇
    2019年
成就勋章
TA的专栏
  • PCIe技术类
    5篇
  • USB总线技术
    1篇
  • Linux性能优化
    2篇
兴趣领域 设置
  • 硬件开发
    驱动开发
  • 操作系统
    linux
  • 软件工程
    性能优化
创作活动更多

2024 博客之星年度评选报名已开启

博主的专属年度盛宴,一年仅有一次!MAC mini、大疆无人机、华为手表等精美奖品等你来拿!

去参加
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

性能优化总结

1、使用各种缓存、使用重用的方式来提高性能。2、无论是cpu、kernel、应用层,都会用到缓存的概念。减少低速设备访问次数、减少低速操作的次数、使用重复使用(重用)的方式来减少反复分配释放资源造成的操作指令浪费。3、对cpu和kernel层来说,cache是高速、RAM是中速、磁盘和flash是低天速。4、对于应用来说,系统调用是费时的慢速操作。5、反复分配和释放资源是费时的,所以应用使用"线程池"来重用线程。6、cpu使用TLB缓存了线性地址到物理地址的转换记录,省去查找页表项。
原创
发布博客 2023.08.02 ·
126 阅读 ·
0 点赞 ·
1 评论 ·
0 收藏

uboot下使用wget下载内核或其他文件

uboot上的的 wget 应用是一个命令行下载器,允许通过 TCP 从 HTTP 服务器下载文件到指定的内存地址,目前 wget 仅支持 80 端口上的 HTTP 服务器,且不支持 HTTPS。此前,uboot 由于不支持TCP协议,仅支持 UDP 协议,因此只能通过 TFTP或 NFS 进行文件传输。CONFIG_PROT_TCP和CONFIG_CMD_WGET是需要进行配置,而配置CONFIG_PROT_TCP_SACK则启用选择性确认(SACK),以实现TCP协议的最大性能。
原创
发布博客 2023.04.25 ·
469 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

PCIe器件无法被枚举的排查方法

PCIe器件无法被枚举的排查方法
原创
发布博客 2022.09.24 ·
1767 阅读 ·
0 点赞 ·
0 评论 ·
5 收藏

如何使用usbmon进行usb抓包调试

1、概述usbmon是linux内核的一个小工具,主要是用来收集在USB总线上进行I/O操作记录。这个功能类似于工具(如tcpdump、Ethereal)进行网络套接字监控。2、使用方法(1)准备挂载debugfs文件系统(需要内核配置使能),然后加载usbmon模块(如果以模块方式编译)。如果是编译进内核,则不需要加载usbmon。# mount -t debugfs none_debugs /sys/kernel/debug# modprobe usbmon#(2)查看usbmon监控
原创
发布博客 2021.08.26 ·
2717 阅读 ·
0 点赞 ·
0 评论 ·
3 收藏

PCIe系统复位

PCIe系统复位一、概述PCIe规范描述了四种类型的复位机制。其中三个是PCIe规范早期版本的一部分,现在被统称为传统复位,当中的两个也被称为基本复位(CR,Conventional Resets)。第四个类别和方法是2.0规范修订版中添加的,称为功能级别复位(FLR,Function Level Reset)。二、传统复位1 基本复位基本复位是由硬件处理,它复位整个设备,重新初始化每个状态机、所有硬件逻辑、端口状态及配置寄存器。该规则的例外是一组被标识为“sticky”的配置寄存器字段,除非所有
翻译
发布博客 2021.08.09 ·
7739 阅读 ·
5 点赞 ·
0 评论 ·
49 收藏

PCI错误恢复

PCI错误恢复一、概述许多PCI总线控制器能够探测到总线发生的错误,例如数据和地址线的奇偶校验错误,也称之为SERR、PERR错误。一些高级的芯片能够处理这些错误,比如有PCIe芯片、PCI主桥芯片。典型的操作是断开受影响设备的连接,停止对其所有的I/O操作,其目的是防止系统崩溃掉。例如,由于DMA的野地址操作致使系统内存数据损坏。此时需要提供重连机制,这样有问题的PCI设备就可以复位,并恢复到工作状态中。复位阶段的操作需要设备驱动和PCI控制器芯片之间协调配合进行。二、错误产生后需要做的事情错误产
翻译
发布博客 2021.08.09 ·
5534 阅读 ·
2 点赞 ·
0 评论 ·
3 收藏

PCIe AER的INJECT机制

一、模块背景调试PCIe AER错误恢复代码非常困难,因为它很难触发真正的硬件错误。基于软件的错误注入可用于伪造各种PCIe错误。首先,应该在内核中启用PCIe AER软件错误注入配置,即以下应位于.config中的项目。CONFIG_PCIEAER_INJECT = y或CONFIG_PCIEAER_INJECT = m使用新内核重新启动或insmod模块后,名为设备文件/ dev / aer_inject 会被创建。然后,需要一个名为aer-inject的用户空间工具,该工具可以从此获取:g
原创
发布博客 2021.06.02 ·
4693 阅读 ·
2 点赞 ·
3 评论 ·
21 收藏

PCIe AER的驱动

不同的内核版本对PCIe的AER机制有微妙的差别,本次研究基于linux内核版本:4.9.190。驱动文件的目录:[drivers\pci\pcie\aer]、[drivers\pci\pcie]。PCIe AER的内核模块初始化的位置在[aerdrv.c]。驱动初始化入口:device_initcall(aer_service_init);在aer_service_init里首先要判断能否注册aer驱动。在pci_aer_available-> pci_msi_enabled检查msi中
原创
发布博客 2021.06.02 ·
1620 阅读 ·
0 点赞 ·
1 评论 ·
4 收藏

常用的Linux性能监控工具

Linux性能监控工具工具主要功能top提供运行系统的动态实时视图,显示系统摘要信息以及任务列表uptime显示系统平均负载ps、pstree提供当前进程列表free显示系统中空闲内存及已使用内存的数据mpstat报告处理器相关的统计数据vmstat报告进程、内存、磁盘、系统、CPU的统计信息iostat报告CPU统计数据,还...
原创
发布博客 2019.10.18 ·
232 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

移植Kdump至嵌入式ARM64环境

工欲善其事,必先利其器。操作系统崩溃是高级Linux运维工程师很头疼的事情,但也不要害怕,前辈们已经给我们磨了好多把刀,其中有一把叫做Kdump。目前在主流的Linux发行版如Ubuntu、Centos等已经默认安装或者仓库中含有工具包,但是经过裁剪的嵌入式Linux里面没有包含Kdump。本文章使用busybox建立最小文件系统,讲述移植Kdump至嵌入式ARM64的环境中。一、使用busyb...
原创
发布博客 2019.05.14 ·
12877 阅读 ·
4 点赞 ·
3 评论 ·
31 收藏