TypechoJoeTheme

安逸

统计
登录
用户名
密码
搜索到 11 篇与 的结果
2023-09-08

GDB与LLDB常用调试指令

GDB与LLDB常用调试指令
LLDBlldb启动lldb 启动到文件上file xxxx 执行run 单步s 单步进入 si 单指令 f 结束 c 继续 n 下一步,不进入子函数 反汇编dis dis -p dis -c 10 dis -p -c 10 断点b --n functionname 用函数名称加断点x b --f filenmae --l xx 用文件的多少行加断点 b fun.cpp:32 b list b -a 0x100004207 栈帧f 0 查看栈0 f 3 倒数第3层 寄存器re r 查看寄储器 re r rax 查看内存memory read 0xXXXXX 查看内存 m read 0xXXXX 查看变量p xxxxx 查看变量 p *infoPtr expr -f bin -- infoPtr->reRIP expr -f hex -- infoPtr->reRIP GDB断点b core.h:41 b test.cpp:48 if(aiTest == 18 && biTest == 19) 条件断点,if (xxx),其中 if 与(最好有空格) b...
2023年09月08日
143 阅读
0 评论
2023-09-01

shell脚本中的if 参数-a至-z

shell脚本中的if 参数-a至-z
shell脚本中的if 参数-a至-z[-a file] 如果file存在则为真 不过貌似有时候-a表示为and:条件与在[] 表达式中,常见的>,<需要加转义字符,表示字符串大小比较,以acill码 位置作为比较。 不直接支持<>运算符,还有逻辑运算符|| && 它需要用-a[and] –o[or]表示[-b file] 如果file存在且是一个块特殊文件则为真 [-c file] 如果file存在且是一个字特殊文件则为真 [-d file] 如果file文件存在且是一个目录则为真 -d前的!是逻辑非 例如: if [ ! -d $lcd_path/$par_date ] 表示后面的那个目录不存在,则执行后面的then操作 [-e file] 如果file文件存在则为真 [-f file] 如果file存在且是一个普通文件则为真 [-g file] 如果file存在且已经设置了SGID则为真(SUID 是 Set User ID, SGID 是 Set Group ID的意思) [-h file] 如果file存在且是一个符号连接则为真 [-k file...
2023年09月01日
152 阅读
0 评论
2022-07-26

debian11编译buildroot老版本错误记录

debian11编译buildroot老版本错误记录
1.root权限编译host-tar checking whether mknod can create fifo without root privileges... configure: error export FORCE_UNSAFE_CONFIGURE=1 2.gnulib版本不匹配 #error "Please port gnulib freadahead.c to your platform! Look at the definition of fflush, fread, ungetc on your system, then report this to bug-gnulib." 进入对应文件夹sed -i 's/IO_ftrylockfile/IO_EOF_SEEN/' lib/*.c echo "#define _IO_IN_BACKUP 0x100" >> lib/stdio-impl.h 3.gcc版本大于10 dtc-parser.tab.o:(.bss+0x10): multiple definition...
2022年07月26日
3,284 阅读
0 评论
2021-12-21

linux的进程独占CPU核心,达到高实时,高效率计算

linux的进程独占CPU核心,达到高实时,高效率计算
作者: 宋宝华本文主要讨论在高实时要求、高效能计算、DPDK等领域,Linux如何让某一个线程排他性独占CPU;独占CPU涉及的线程、中断隔离原理;以及如何在排他性独占的情况下,甚至让系统的timer tick也不打断独占任务,从而实现最低的延迟抖动。本文目录:工程需求用户态隔离内核态隔离3.1 中断3.2 内核线程最佳实践指南Part 1工程需求在一个SMP或者NUMA系统中,CPU的数量大于1。在工程中,我们有时候有一种需求,就是让某个能够独占CPU,这个CPU什么都不做,就只做指定的任务,从而获得低延迟、高实时的好处。比如在DPDK中,通过设置GRUB_CMDLINE_LINUX_DEFAULT=“isolcpus=0-3,5,7” 隔离CPU0,3,5,7,让DPDK的任务在运行的时候,其他任务不会和DPDK的任务进行上下文切换,从而保证网络性能最佳[1]。在Realtime应用场景中,通过isolcpus=2隔离CPU2,然后把实时应用通过taskset绑定到隔离的核:taskset-c 2 pn_dev 从而保证低延迟要求[2]。Part 2用户态隔离这个地方,我...
2021年12月21日
16,574 阅读
0 评论
2021-11-16

uboot新增开发板配置

uboot新增开发板配置
以imx6q为例:一、创建板子目录:"board/qxrobot/qxr002/"内部一般有3个文件 Makefile : 添加编译board.c# # # obj-y := board.o Kconfig : 增加一些配置宏if TARGET_QXR002 config SYS_BOARD //指定板子名 default "qxr002" config SYS_VENDOR //指定厂家 ,这两项用于指定board/qxrobot/qxr002/目录 default "qxrobot" config SYS_CONFIG_NAME //指定你的 include/configs/qxr002.h 为配置头文件 default "qxr002" endif board.c : 开发板启动配置文件/* * Copyright (C) 2015 Freescale Semiconductor, Inc. * * Author: Fabio Estevam <fabio....
2021年11月16日
3,620 阅读
0 评论