Linux Kernel KDB KGDB 实体机内核调试

内核编译配置

CONFIG_DEBUG_INFO=y                     # 编译debug infoCONFIG_MAGIC_SYSRQ=y                    # 功能编译开关
CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x1   # 默认开启项 默认存在 /proc/sysrq-trigger
CONFIG_MAGIC_SYSRQ_SERIAL=y             # 串行sysrq (许多嵌入式主板都具有断开连接的 TTL 电平串行,这可能会产生一些无效的信号。导致检测到虚假sysrq )CONFIG_KGDB=y                           # 需要开启 gdb 远程调试内核
CONFIG_KGDB_KDB=y                       # KDB调试前端
CONFIG_KDB_DEFAULT_ENABLE=0x0           # 默认不启动KDB 通过模块拔插方式开启
CONFIG_KDB_KEYBOARD=y                   # 需要开启 可以使用键盘
CONFIG_KDB_CONTINUE_CATASTROPHIC=0      # KDB调试内核引发的Oops等容错,=0 总是继续 =1 尝试继续 =2 强制重新启动# CONFIG_SERIAL_KGDB_NMI is not set     # 此特殊驱动程序允许您临时使用 NMI 调试器端口作为普通控制台(假设该端口已连接到 KGDB)
CONFIG_HAVE_ARCH_KGDB=y                 # 依赖项
CONFIG_KGDB_SERIAL_CONSOLE=y            # KGDB 串口调试终端配置,与 kgdb 共享串行控制台。初始化必须使用 Sysrq -g 进入
CONFIG_KGDB_TESTS=y                     # 这是一个 kgdb I/O 模块,专门用于测试kgdb 的内部功能。回归测试使用
# CONFIG_KGDB_TESTS_ON_BOOT is not set  # 启动时进行模块内部测试
CONFIG_KGDB_LOW_LEVEL_TRAP=y            # 这将为断点异常处理程序添加对 kgdb 的额外回调,这将允许 kgdb 单步执行。

内核运行时设置

  • 关闭随机化
grub 行添加 nokaslr

注:不设置会报错 -22 Permisson denied

  • kdb on conlose 设置 (对应CONFIG_KDB_DEFAULT_ENABLE=0x0)
echo ttyS0 > /sys/module/kgdboc/parameters/kgdboc # ttyS0 tty0 ttyAMA0 需要确认串口输出设备
  • 开启 kdb 命令行
echo 1 > /sys/module/kdb/parameters/cmd_enable 

注:不设置会报错 -22 Permisson denied

  • 进入命令行
    • 方法1:panic 自动进入
    • 方法2:手动进入
      echo -g > /proc/sysrq-trigger
      

kdb调试

  • 栈 bt

    [0]kdb> bt 
    Stack traceback for pid 1092
    0xffff88823568c680     1092     1080  1    2   R  0xffff88823568d9c0  bash
    
  • 所有CPU运行任务 -btc

    [0]kdb> btc
    btc: cpu status: Currently on cpu 0
    Available cpus: 0-1(I), 2, 3-7(I)
    Stack traceback for pid 0
    0xffffffff82412780        0        0  1    0   I  0xffffffff82413ac0 *swapper/0
    Stack traceback for pid 0
    0xffff888106e05e00        0        0  1    1   I  0xffff888106e07140  swapper/1
    Stack traceback for pid 1092
    0xffff88823568c680     1092     1080  1    2   R  0xffff88823568d9c0  bash
    Stack traceback for pid 0
    0xffff888106e04680        0        0  1    3   I  0xffff888106e059c0  swapper/3
    Stack traceback for pid 0
    0xffff888106e2af00        0        0  1    4   I  0xffff888106e2c240  swapper/4
    Stack traceback for pid 0
    0xffff888106e2c680        0        0  1    5   I  0xffff888106e2d9c0  swapper/5
    Stack traceback for pid 0
    0xffff888106e29780        0        0  1    6   I  0xffff888106e2aac0  swapper/6
    Stack traceback for pid 0
    0xffff888106e28000        0        0  1    7   I  0xffff888106e29340  swapper/7
    
  • 模块状态 lsmod

    [2]kdb> lsmod
    Module                  Size  modstruct     Used by
    sunrpc                364544  0xffffffffc04d4e00    1  (Live) 0xffffffffc0488000 [ ]
    kvm_intel             237568  0xffffffffc052d900    0  (Live) 0xffffffffc04fb000 [ ]
    snd_hda_codec_generic   86016  0xffffffffc0623580    1  (Live) 0xffffffffc0611000 [ ]
    kvm                   679936  0xffffffffc05fd100    1  (Live) 0xffffffffc056a000 [ kvm ]
    irqbypass              16384  0xffffffffc03bc040    1  (Live) 0xffffffffc03ba000 [ irqbypass ]
    crct10dif_pclmul       16384  0xffffffffc0377200    0  (Live) 0xffffffffc0375000 [ ]
    crc32_pclmul           16384  0xffffffffc034f200    0  (Live) 0xffffffffc034d000 [ ]
    qxl                    73728  0xffffffffc04f76c0    1  (Live) 0xffffffffc04e8000 [ ]
    snd_hda_intel          45056  0xffffffffc03b7000    0  (Live) 0xffffffffc03ae000 [ ]
    ghash_clmulni_intel    16384  0xffffffffc00b3400    0  (Live) 0xffffffffc00b1000 [ ]
    snd_hda_codec         131072  0xffffffffc0482600    2  (Live) 0xffffffffc0467000 [ snd_hda_codec snd_hda_codec ]
    ttm                   118784  0xffffffffc0427e80    1  (Live) 0xffffffffc0411000 [ ttm ]
    drm_kms_helper        176128  0xffffffffc0563600    1  (Live) 0xffffffffc053e000 [ drm_kms_helper ]
    snd_hda_core           77824  0xffffffffc0328380    3  (Live) 0xffffffffc0318000 [ snd_hda_core snd_hda_core snd_hda_core ]
    snd_hwdep              20480  0xffffffffc03eb080    1  (Live) 0xffffffffc03e8000 [ snd_hwdep ]
    syscopyarea            16384  0xffffffffc03c5000    1  (Live) 0xffffffffc03c3000 [ syscopyarea ]
    snd_pcm                98304  0xffffffffc03a9640    3  (Live) 0xffffffffc0395000 [ snd_pcm snd_pcm snd_pcm ]
    intel_rapl_perf        16384  0xffffffffc0383740    0  (Live) 0xffffffffc0381000 [ ]
    sysfillrect            16384  0xffffffffc037c040    1  (Live) 0xffffffffc037a000 [ sysfillrect ]
    sysimgblt              16384  0xffffffffc0365000    1  (Live) 0xffffffffc0363000 [ sysimgblt ]
    fb_sys_fops            16384  0xffffffffc035e000    1  (Live) 0xffffffffc035c000 [ fb_sys_fops ]
    snd_timer              32768  0xffffffffc0372100    1  (Live) 0xffffffffc036c000 [ snd_timer ]
    virtio_balloon         20480  0xffffffffc0355240    0  (Live) 0xffffffffc0352000 [ ]
    sg                     40960  0xffffffffc034a0c0    0  (Live) 0xffffffffc0342000 [ ]
    drm                   475136  0xffffffffc02f5940    4  (Live) 0xffffffffc028d000 [ drm drm drm ]
    snd                    86016  0xffffffffc03123c0    6  (Live) 0xffffffffc0302000 [ snd snd snd snd snd snd ]
    psmouse               159744  0xffffffffc027bec0    0  (Live) 0xffffffffc0259000 [ ]
    soundcore              16384  0xffffffffc0252040    1  (Live) 0xffffffffc0250000 [ soundcore ]
    i2c_piix4              24576  0xffffffffc0249540    0  (Live) 0xffffffffc0245000 [ ]
    pcspkr                 16384  0xffffffffc023f100    0  (Live) 0xffffffffc023d000 [ ]
    ip_tables              28672  0xffffffffc0031280    0  (Live) 0xffffffffc002c000 [ ]
    ext4                  675840  0xffffffffc01f43c0    2  (Live) 0xffffffffc015c000 [ ]
    mbcache                16384  0xffffffffc0097080    1  (Live) 0xffffffffc0095000 [ mbcache ]
    jbd2                  110592  0xffffffffc0139b00    1  (Live) 0xffffffffc0122000 [ jbd2 ]
    sr_mod                 28672  0xffffffffc0109140    0  (Live) 0xffffffffc0104000 [ ]
    cdrom                  57344  0xffffffffc011f280    1  (Live) 0xffffffffc0113000 [ cdrom ]
    sd_mod                 49152  0xffffffffc01014c0    3  (Live) 0xffffffffc00f7000 [ ]
    ata_generic            16384  0xffffffffc006c700    0  (Live) 0xffffffffc006a000 [ ]
    ata_piix               36864  0xffffffffc0159240    2  (Live) 0xffffffffc0152000 [ ]
    crc32c_intel           24576  0xffffffffc010f200    4  (Live) 0xffffffffc010c000 [ ]
    libata                237568  0xffffffffc00ef9c0    2  (Live) 0xffffffffc00bc000 [ libata libata ]
    serio_raw              16384  0xffffffffc00ae200    0  (Live) 0xffffffffc00ac000 [ ]
    virtio_console         32768  0xffffffffc00a4400    0  (Live) 0xffffffffc009e000 [ ]
    e1000                 143360  0xffffffffc0091140    0  (Live) 0xffffffffc0071000 [ ]
    floppy                 81920  0xffffffffc0063c40    0  (Live) 0xffffffffc0055000 [ ]
    
  • 进程状态 ps

    [2]kdb> ps
    7 idle processes (state I) and 
    39 sleeping system daemon (state M) processes suppressed,
    use 'ps A' to see all.
    Task Addr               Pid   Parent [*] cpu State Thread             Command
    0xffff88823568c680     1092     1080  1    2   R  0xffff88823568d9c0 *bash0xffff888106db4680        1        0  0    0   S  0xffff888106db59c0  systemd
    0xffff888106db0000        3        2  0    0   D  0xffff888106db1340  rcu_gp
    0xffff888106db5e00        4        2  0    0   D  0xffff888106db7140  rcu_par_gp
    0xffff888106db2f00        5        2  0    0   D  0xffff888106db4240  kworker/0:0
    0xffff888106deaf00        6        2  0    0   D  0xffff888106dec240  kworker/0:0H
    0xffff888106dec680        7        2  0    2   D  0xffff888106ded9c0  kworker/u16:0
    0xffff888106de9780        8        2  0    0   D  0xffff888106deaac0  mm_percpu_wq
    0xffff888106dede00       10        2  0    7   D  0xffff888106def140  rcu_sched
    0xffff888106e01780       11        2  0    0   D  0xffff888106e02ac0  rcu_bh
    0xffff888106e49780       17        2  0    1   D  0xffff888106e4aac0  kworker/1:0
    0xffff888106e48000       18        2  0    1   D  0xffff888106e49340  kworker/1:0H
    0xffff888106e75e00       22        2  0    2   D  0xffff888106e77140  kworker/2:0
    0xffff888106e72f00       23        2  0    2   D  0xffff888106e74240  kworker/2:0H
    0xffff888106e90000       27        2  0    3   D  0xffff888106e91340  kworker/3:0
    0xffff888106e95e00       28        2  0    3   D  0xffff888106e97140  kworker/3:0H
    0xffff888106ecaf00       32        2  0    4   D  0xffff888106ecc240  kworker/4:0
    0xffff888106ecc680       33        2  0    4   D  0xffff888106ecd9c0  kworker/4:0H
    0xffff888106ef0000       37        2  0    5   D  0xffff888106ef1340  kworker/5:0
    0xffff888106ef5e00       38        2  0    5   D  0xffff888106ef7140  kworker/5:0H
    0xffff888106f1de00       42        2  0    6   D  0xffff888106f1f140  kworker/6:0
    0xffff888106f1af00       43        2  0    6   D  0xffff888106f1c240  kworker/6:0H
    0xffff888106f41780       47        2  0    7   D  0xffff888106f42ac0  kworker/7:0
    0xffff888106f40000       48        2  0    7   D  0xffff888106f41340  kworker/7:0H
    0xffff888106f75e00       51        2  0    1   D  0xffff888106f77140  netns
    0xffff888106f74680       53        2  0    0   D  0xffff888106f759c0  kworker/0:1
    0xffff888237811780       56        2  0    2   D  0xffff888237812ac0  writeback
    0xffff888237858000       60        2  0    3   D  0xffff888237859340  crypto
    0xffff88823785de00       61        2  0    4   D  0xffff88823785f140  kintegrityd
    0xffff88823785af00       62        2  0    6   D  0xffff88823785c240  kblockd
    0xffff888237922f00       63        2  0    5   D  0xffff888237924240  md
    0xffff888237924680       64        2  0    7   D  0xffff8882379259c0  edac-poller
    0xffff888237920000       66        2  0    4   D  0xffff888237921340  kworker/4:1
    0xffff888237925e00       67        2  0    2   R  0xffff888237927140  kworker/2:1
    0xffff888236c61780       68        2  0    1   D  0xffff888236c62ac0  kworker/1:1
    0xffff888236c60000       69        2  0    3   D  0xffff888236c61340  kworker/3:1
    0xffff8882337a9780       96        2  0    6   D  0xffff8882337aaac0  kworker/6:1
    0xffff88823306af00      101        2  0    7   D  0xffff88823306c240  kworker/u16:1
    0xffff888233069780      103        2  0    7   D  0xffff88823306aac0  kworker/7:1
    0xffff888233002f00      134        2  0    0   D  0xffff888233004240  kthrotld
    0xffff888233004680      135        2  0    2   D  0xffff8882330059c0  acpi_thermal_pm
    0xffff888233005e00      136        2  0    4   D  0xffff888233007140  kmpath_rdacd
    0xffff888233000000      137        2  0    1   D  0xffff888233001340  kaluad
    0xffff8882337ac680      138        2  0    5   D  0xffff8882337ad9c0  ipv6_addrconf
    0xffff8882337aaf00      139        2  0    3   D  0xffff8882337ac240  kworker/3:2
    0xffff8882337ade00      140        2  0    7   D  0xffff8882337af140  kstrp
    0xffff8882337a8000      141        2  0    5   D  0xffff8882337a9340  kworker/5:1
    0xffff8882330dc680      229        2  0    6   D  0xffff8882330dd9c0  kworker/6:2
    0xffff888233601780      238        2  0    5   D  0xffff888233602ac0  kworker/5:2
    0xffff888233734680      243        2  0    4   D  0xffff8882337359c0  kworker/4:2
    0xffff888233731780      244        2  0    4   D  0xffff888233732ac0  kworker/4:3
    0xffff888233735e00      391        2  0    4   D  0xffff888233737140  ata_sff
    0xffff888233020000      398        2  0    4   D  0xffff888233021340  scsi_tmf_0
    0xffff888233704680      400        2  0    4   D  0xffff8882337059c0  scsi_tmf_1
    0xffff888233605e00      401        2  0    3   D  0xffff888233607140  kworker/u16:2
    0xffff888233600000      403        2  0    1   D  0xffff888233601340  kworker/u16:3
    0xffff88823306de00      420        2  0    0   D  0xffff88823306f140  kworker/0:2
    0xffff888233068000      423        2  0    2   D  0xffff888233069340  kworker/2:1H
    0xffff888233021780      424        2  0    5   D  0xffff888233022ac0  kworker/5:1H
    0xffff888236c65e00      425        2  0    2   D  0xffff888236c67140  kworker/2:2
    0xffff88823089c680      426        2  0    4   D  0xffff88823089d9c0  kworker/4:1H
    0xffff888230899780      430        2  0    3   D  0xffff88823089aac0  kworker/3:1H
    0xffff888230898000      431        2  0    1   D  0xffff888230899340  kworker/1:1H
    0xffff88823089de00      432        2  0    1   D  0xffff88823089f140  kworker/1:2
    0xffff88823089af00      433        2  0    7   D  0xffff88823089c240  kworker/7:1H
    0xffff888230929780      435        2  0    6   D  0xffff88823092aac0  kworker/6:1H
    0xffff88823092de00      446        2  0    0   D  0xffff88823092f140  kworker/0:1H
    0xffff88823092c680      452        2  0    4   D  0xffff88823092d9c0  ext4-rsv-conver
    0xffff88823092af00      511        2  0    6   D  0xffff88823092c240  kworker/6:3
    0xffff888233634680      513        2  0    7   D  0xffff8882336359c0  kworker/7:2
    0xffff888233632f00      519        2  0    1   D  0xffff888233634240  kworker/1:3
    0xffff8882330daf00      553        1  0    5   S  0xffff8882330dc240  systemd-journal
    0xffff8882356eaf00      567        1  0    0   S  0xffff8882356ec240  systemd-udevd
    0xffff888234b0de00      688        2  0    0   D  0xffff888234b0f140  ttm_swap
    0xffff888234b08000      702        2  0    4   D  0xffff888234b09340  kworker/4:4
    0xffff888233630000      705        2  0    3   D  0xffff888233631340  ext4-rsv-conver
    0xffff888233038000      715        1  0    1   S  0xffff888233039340  mdadm
    0xffff88823303de00      716        1  0    1   S  0xffff88823303f140  auditd
    0xffff888232a10000      717        1  0    4   S  0xffff888232a11340  auditd
    0xffff888233039780      719        2  0    4   D  0xffff88823303aac0  kworker/4:5
    0xffff8882330f5e00      735        1  0    0   S  0xffff8882330f7140  dbus-daemon
    0xffff888235688000      742        1  0    5   S  0xffff888235689340  chronyd
    0xffff8882361ade00      745        1  0    7   S  0xffff8882361af140  irqbalance
    0xffff88823314af00      746        1  0    2   S  0xffff88823314c240  gmain
    0xffff8882330dde00      753        1  0    5   S  0xffff8882330df140  NetworkManager
    0xffff888232a15e00      758        1  0    4   S  0xffff888232a17140  gmain
    0xffff888232a11780      759        1  0    2   S  0xffff888232a12ac0  gdbus
    0xffff8882330d9780      755        1  0    5   S  0xffff8882330daac0  systemd-logind
    0xffff888233148000      756        2  0    3   D  0xffff888233149340  kworker/3:3
    0xffff88823314de00      757        2  0    3   D  0xffff88823314f140  kworker/3:4
    0xffff8882329dde00      763        2  0    5   D  0xffff8882329df140  rpciod
    0xffff8882329daf00      764        2  0    0   D  0xffff8882329dc240  kworker/u17:0
    0xffff8882329d9780      765        2  0    2   D  0xffff8882329daac0  xprtiod
    0xffff888233602f00      766        1  0    0   S  0xffff888233604240  sshd
    0xffff88823568de00      783      753  0    4   S  0xffff88823568f140  dhclient
    0xffff888234b1de00      794        1  0    0   S  0xffff888234b1f140  gssproxy
    0xffff8882361a8000      801        1  0    4   S  0xffff8882361a9340  gssproxy
    0xffff8882361a9780      802        1  0    3   S  0xffff8882361aaac0  gssproxy
    0xffff8882361aaf00      803        1  0    6   S  0xffff8882361ac240  gssproxy
    0xffff8882361ac680      804        1  0    7   S  0xffff8882361ad9c0  gssproxy
    0xffff888233631780      805        1  0    3   S  0xffff888233632ac0  gssproxy
    0xffff888233701780      816        1  0    7   S  0xffff888233702ac0  crond
    0xffff888233705e00      817        1  0    2   S  0xffff888233707140  agetty
    0xffff888233022f00     1072        2  0    0   D  0xffff888233024240  kworker/0:3
    0xffff888233025e00     1080        1  0    1   S  0xffff888233027140  login
    0xffff8882330d8000     1084        1  0    6   S  0xffff8882330d9340  systemd
    0xffff888230a6af00     1085     1084  0    3   S  0xffff888230a6c240  (sd-pam)
    0xffff88823568c680     1092     1080  1    2   R  0xffff88823568d9c0 *bash
    
  • 设置断点 bp

  • 查看断点 bl

  • 清除断点 bc

  • 开启断点 be

  • 关闭断点 bd

  • 单步执行 ss

  • 帮助 help / ?

     [3]kdb> ? Command         Usage                Description----------------------------------------------------------md              <vaddr>             Display Memory Contents, also mdWcN, e.g. md8c1mdr             <vaddr> <bytes>     Display Raw Memorymdp             <paddr> <bytes>     Display Physical Memorymds             <vaddr>             Display Memory Symbolicallymm              <vaddr> <contents>  Modify Memory Contentsgo              [<vaddr>]           Continue Executionrd                                  Display Registersrm              <reg> <contents>    Modify Registersef              <vaddr>             Display exception framebt              [<vaddr>]           Stack tracebackbtp             <pid>               Display stack for process <pid>bta             [D|R|S|T|C|Z|E|U|I|M|A]Backtrace all processes matching state flagbtc                                 Backtrace current process on each cpubtt             <vaddr>             Backtrace process given its struct task addressenv                                 Show environment variablesset                                 Set environment variableshelp                                Display Help Message?                                   Display Help Messagecpu             <cpunum>            Switch to new cpukgdb                                Enter kgdb modeps              [<flags>|A]         Display active task listpid             <pidnum>            Switch to another taskreboot                              Reboot the machine immediatelylsmod                               List loaded kernel modulessr              <key>               Magic SysRq keydmesg           [lines]             Display syslog bufferdefcmd          name "usage" "help" Define a set of commands, down to endefcmdkill            <-signal> <pid>     Send a signal to a processsummary                             Summarize the systemper_cpu         <sym> [<bytes>] [<cpu>]Display per_cpu variablesgrephelp                            Display help on | grepbp              [<vaddr>]           Set/Display breakpointsbl              [<vaddr>]           Display breakpointsbph             [<vaddr>]           [datar [length]|dataw [length]]   Set hw brkbc              <bpnum>             Clear Breakpointbe              <bpnum>             Enable Breakpointbd              <bpnum>             Disable Breakpointss                                  Single Stepdumpcommon                          Common kdb debuggingdumpall                             First line debuggingdumpcpu                             Same as dumpall but only tasks on cpusftdump          [skip_#lines] [cpu] Dump ftrace log
    

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/232409.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

vscode如何开发微信小程序?(保姆级教学)

1.安装“微信小程序开发工具”扩展 2.安装“vscode weapp api”扩展 3.安装“vscode wxml”扩展 4.安装“vscode-wechat”扩展 5.在终端执行命令&#xff1a; vue create -p dcloudio/uni-preset-vue uniapp-test uniapp-test就是我这里的项目名称了 6.如果遇到了这个错误&a…

KBU1010-ASEMI功率整流器件KBU1010

编辑&#xff1a;ll KBU1010-ASEMI功率整流器件KBU1010 型号&#xff1a;KBU1010 品牌&#xff1a;ASEMI 封装&#xff1a;KBU-4 特性&#xff1a;插件、整流桥 最大平均正向电流&#xff1a;10A 最大重复峰值反向电压&#xff1a;1000V 恢复时间&#xff1a;&#xff…

C++多态(2) ——抽象类与final、override关键字

C多态(2) ——抽象类与final、override关键字_c class final-CSDN博客

紫光展锐T820与飞桨完成I级兼容性测试 助推端侧AI融合创新

近日&#xff0c;紫光展锐高性能5G SoC T820与百度飞桨完成I级兼容性测试&#xff08;基于Paddle Lite工具&#xff09;。测试结果显示&#xff0c;双方兼容性表现良好&#xff0c;整体运行稳定。这是紫光展锐加入百度“硬件生态共创计划”后的阶段性成果。 本次I级兼容性测试完…

Vue 条件渲染 v-if

v-if 指令&#xff1a;用于控制元素的显示或隐藏。 执行条件&#xff1a;当条件为 false 时&#xff0c;会将元素从 DOM 中删除。 应用场景&#xff1a;适用于显示隐藏切换频率较低的场景。 语法格式&#xff1a; <div v-if"数据">内容</div> 基础用…

ros2 学习03-开发工具vscode 插件配置

VSCode插件配置 为了便于后续ROS2的开发与调试&#xff0c;我们还可以安装一系列插件&#xff0c;无限扩展VSCode的功能。 中文语言包 Python插件 C插件 CMake插件 vscode-icons ROS插件 Msg Language Support Visual Studio IntelliCode URDF Markdown All in One VSCode支持的…

技术探秘:在RISC Zero中验证FHE——由隐藏到证明:FHE验证的ZK路径(1)

1. 引言 开源代码实现见&#xff1a; https://github.com/hashcloak/fhe_risc0_zkvm&#xff08;Rust&#xff09;https://github.com/weikengchen/vfhe-profiled&#xff08;Rust&#xff09;https://github.com/l2iterative/vfhe0&#xff08;Rust&#xff09; L2IV Resea…

两点云相减并保存结果的C++代码实现

C中实现两个点云相减并保存相减结果&#xff0c;可以使用点云库&#xff08;PCL, Point Cloud Library&#xff09;。代码示例展示了如何进行点云相减&#xff0c;并将结果保存为一个新的点云文件。 这个例子使用了PCL中的pcl::KdTreeFLANN来查找一个点云中的点在另一个点云中…

虚拟磁盘扩容

看了acrn内部的磁盘制作、扩容脚本,学习一下 #!/bin/bash # Copyright (C) 2020-2022 Intel Corporation. # SPDX-License-Identifier: BSD-3-Clausebuild_dir="$PWD/build" cloud_image="${build_dir}/focal-server-cloudimg-amd64.img" cloud_image_ur…

基于AT89C52单片机的计算器设计与仿真

点击链接获取Keil源码与Project Backups仿真图&#xff1a; https://download.csdn.net/download/qq_64505944/88637995?spm1001.2014.3001.5503 源码获取 B 源码仿真图课程设计51 摘 要 计算器一般是指“电子计算器”,能进行数学运算的手持机器&#xff0c;拥有集成电路芯…

整合SpringSecurity

目录 前言 数据库设计 用户表 角色表 用户角色表 权限表 角色权限表 插入数据 表的实体类 用户表实体类 角色表实体类 权限表实体类 mapper层接口 UserMapper RoleMapper AuthorityMapper 封装登录信息 统一响应结果 上下文相关类 jwt令牌工具类 依赖导入…

2023.12.17 关于 Redis 的特性和应用场景

目录 引言 Redis 特性 内存中存储数据 可编程性 可扩展性 持久化 支持集群 高可用性 Redis 优势 Redis 用作数据库 Redis 相较于 MySQL 优势 Redis 相较于 MySQL 劣势 Redis 用作缓存 典型场景 Redis 存储 session 信息 Redis 用作消息队列 初心 消息队列的…

Skywalking系列之最新版9.2.0-JavaAgent本地构建

MAC 10.15.7IDEA 2021.2skywalking-agent 9.2.0-SNAPSHOTJDK 17/21 (最新的代码要看最新的要求&#xff0c;注意不能使用JDK8&#xff0c;会构建失败)Maven 3.6.0 关于本地构建JavaAgent源码 1、获取源码&#xff0c;加载submodule 分步执行&#xff1a; git clone https:/…

智能优化算法应用:基于适应度相关算法3D无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用&#xff1a;基于适应度相关算法3D无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用&#xff1a;基于适应度相关算法3D无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.适应度相关算法4.实验参数设定5.算法…

构建高效统一的音视频联动融合通信调度平台

在信息技术日益高度发展的今天&#xff0c;越来越多的企业或者组织机构重视如何提高内外部的工作效率&#xff0c;但由于传统的通信方式如电话、邮件、短信、传真等方式无法满足企业高效、快速的沟通要求&#xff0c;因此需要一个可以将各种通信方式结合在一起的通信系统来满足…

动态规划 - 740. 删除并获得点数(C#和C实现)

动态规划 - 740. 删除并获得点数(C#和C实现) 题目描述 给你一个整数数组 nums &#xff0c;你可以对它进行一些操作。 每次操作中&#xff0c;选择任意一个 nums[i] &#xff0c;删除它并获得 nums[i] 的点数。之后&#xff0c;你必须删除每个等于 nums[i] - 1 或 nums[i] …

驭见大模型 智领新征程丨泰迪智能科技荣登2023年度广东省人工智能应用项目风云榜

12月15日&#xff0c;由广东省科学技术厅、广东省工业和信息化厅、广东省人力资源和社会保障厅、广东省政务服务数据管理局、广东省科学技术协会指导&#xff0c;广东省人工智能产业协会主办的2023年粤港澳大湾区人工智能产业大会正式举办&#xff0c;大会以“驭见大模型、智领…

静态独享专线IP怎么设置?使用静态IP怎么上网

随着互联网的普及和发展&#xff0c;越来越多的人开始使用电脑上网。在上网的过程中&#xff0c;IP地址是每个设备与互联网连接的唯一标识。而静态IP地址则是指固定不变的IP地址&#xff0c;它可以让您的电脑在每次连接互联网时都能够获得相同的IP地址&#xff0c;这对于一些需…

PTFE四氟托盘应用于化工、医药、食品行业

PTFE托盘是一种广泛应用于化工、医药、食品等行业的特种托盘&#xff0c;采用聚四氟乙烯&#xff08;PTFE&#xff09;材料制造而成。PTFE是一种具有出色耐腐蚀性、高温稳定性和优异物理特性的材料。 PTFE托盘在化工领域中被广泛应用&#xff0c;主要用于处理腐蚀性的化学物质。…

【leetcode876】链表的中间结点Java代码讲解

12.19 链表的中间结点 给你单链表的头结点 head &#xff0c;请你找出并返回链表的中间结点。 如果有两个中间结点&#xff0c;则返回第二个中间结点。 示例 1&#xff1a; 输入&#xff1a;head [1,2,3,4,5] 输出&#xff1a;[3,4,5] 解释&#xff1a;链表只有一个中间结点&a…