BCC源码下载

news2025/1/10 19:21:07

接前一篇文章:BCC介绍

1. GitHub地址

上一篇文章中已提到,BCC的github地址是:https://github.com/iovisor/bcc。

页面如下所示:

2. 源码下载

打开终端,创建好要存放BCC源码的目录,进入此目录。
然后,在终端下输入以下命令进行BCC源码下载:

git clone https://github.com/iovisor/bcc.git

实际命令及过程如下所示:

~/eBPF/BCC$ git clone https://github.com/iovisor/bcc.git
正克隆到 'bcc'...
remote: Enumerating objects: 28172, done.
remote: Counting objects: 100% (4480/4480), done.
remote: Compressing objects: 100% (565/565), done.
remote: Total 28172 (delta 4035), reused 3938 (delta 3914), pack-reused 23692
接收对象中: 100% (28172/28172), 19.11 MiB | 137.00 KiB/s, 完成.
处理 delta 中: 100% (18732/18732), 完成.

3. 查看源码结构

~/eBPF/BCC/bcc$ tree
.
├── cmake
│   ├── bump_version.cmake
│   ├── clang_libs.cmake
│   ├── CmakeUninstall.cmake.in
│   ├── FindCompilerFlag.cmake
│   ├── FindKernelHeaders.cmake
│   ├── FindLibBpf.cmake
│   ├── FindLibDebuginfod.cmake
│   ├── FindLibElf.cmake
│   ├── FindLibLzma.cmake
│   ├── FindLuaJIT.cmake
│   ├── GetGitRevisionDescription.cmake
│   ├── GetGitRevisionDescription.cmake.in
│   ├── static_libstdc++.cmake
│   └── version.cmake
├── CMakeLists.txt
├── CODEOWNERS
├── CONTRIBUTING-SCRIPTS.md
├── debian
│   ├── bcc-lua.install
│   ├── bcc-tools.install
│   ├── changelog
│   ├── compat
│   ├── control
│   ├── copyright
│   ├── docs
│   ├── libbcc-examples.install
│   ├── libbcc.install
│   ├── python3-bcc.install
│   ├── python-bcc.install
│   ├── rules
│   └── source
│       └── format
├── docker
│   ├── build
│   │   ├── Dockerfile.fedora
│   │   └── Dockerfile.ubuntu
│   ├── Dockerfile.debian
│   └── Dockerfile.ubuntu
├── docs
│   ├── kernel_config.md
│   ├── kernel-versions.md
│   ├── reference_guide.md
│   ├── special_filtering.md
│   ├── tutorial_bcc_python_developer.md
│   └── tutorial.md
├── examples
│   ├── cgroupid
│   │   ├── cgroupid.c
│   │   ├── Dockerfile
│   │   └── Makefile
│   ├── CMakeLists.txt
│   ├── cpp
│   │   ├── CGroupTest.cc
│   │   ├── CMakeLists.txt
│   │   ├── CPUDistribution.cc
│   │   ├── FollyRequestContextSwitch.cc
│   │   ├── HelloWorld.cc
│   │   ├── KFuncExample.cc
│   │   ├── KModRetExample.cc
│   │   ├── LLCStat.cc
│   │   ├── pyperf
│   │   │   ├── CMakeLists.txt
│   │   │   ├── Py36Offsets.cc
│   │   │   ├── PyPerfBPFProgram.cc
│   │   │   ├── PyPerf.cc
│   │   │   ├── PyPerfDefaultPrinter.cc
│   │   │   ├── PyPerfDefaultPrinter.h
│   │   │   ├── PyPerfLoggingHelper.cc
│   │   │   ├── PyPerfLoggingHelper.h
│   │   │   ├── PyPerfSampleProcessor.h
│   │   │   ├── PyPerfType.h
│   │   │   ├── PyPerfUtil.cc
│   │   │   └── PyPerfUtil.h
│   │   ├── RandomRead.cc
│   │   ├── RecordMySQLQuery.cc
│   │   ├── SkLocalStorageIterator.cc
│   │   ├── TaskIterator.cc
│   │   ├── TCPSendStack.cc
│   │   └── UseExternalMap.cc
│   ├── hello_world.py
│   ├── local_storage
│   │   ├── inode_storage.py
│   │   └── task_storage.py
│   ├── lua
│   │   ├── bashreadline.c
│   │   ├── bashreadline.lua
│   │   ├── CMakeLists.txt
│   │   ├── kprobe-latency.lua
│   │   ├── kprobe-write.lua
│   │   ├── memleak.lua
│   │   ├── offcputime.lua
│   │   ├── sock-parse-dns.lua
│   │   ├── sock-parse-http.lua
│   │   ├── sock-protolen.lua
│   │   ├── sock-proto.lua
│   │   ├── strlen_count.lua
│   │   ├── task_switch.lua
│   │   ├── tracepoint-offcputime.lua
│   │   ├── uprobe-readline.lua
│   │   ├── uprobe-readline-perf.lua
│   │   ├── uprobe-tailkt.lua
│   │   └── usdt_ruby.lua
│   ├── networking
│   │   ├── CMakeLists.txt
│   │   ├── distributed_bridge
│   │   │   ├── CMakeLists.txt
│   │   │   ├── main.py
│   │   │   ├── simulation.py -> ../simulation.py
│   │   │   ├── tunnel.c
│   │   │   ├── tunnel_mesh.c
│   │   │   ├── tunnel_mesh.py
│   │   │   └── tunnel.py
│   │   ├── dns_matching
│   │   │   ├── dns_matching.c
│   │   │   └── dns_matching.py
│   │   ├── http_filter
│   │   │   ├── CMakeLists.txt
│   │   │   ├── http-parse-complete.c
│   │   │   ├── http-parse-complete.py
│   │   │   ├── http-parse-simple.c
│   │   │   ├── http-parse-simple.py
│   │   │   └── README.md
│   │   ├── neighbor_sharing
│   │   │   ├── CMakeLists.txt
│   │   │   ├── README.txt
│   │   │   ├── simulation.py -> ../simulation.py
│   │   │   ├── tc_neighbor_sharing.c
│   │   │   └── tc_neighbor_sharing.py
│   │   ├── net_monitor.py
│   │   ├── simple_tc.py
│   │   ├── simulation.py
│   │   ├── sockmap.py
│   │   ├── tc_perf_event.py
│   │   ├── tcp_mon_block
│   │   │   ├── README.md
│   │   │   ├── screenshots
│   │   │   │   ├── 1.JPG
│   │   │   │   └── 2.JPG
│   │   │   └── src
│   │   │       ├── allow_list.json
│   │   │       ├── http_client.py
│   │   │       ├── tcp_mon_block.c
│   │   │       ├── tcp_mon_block.py
│   │   │       └── web_server.py
│   │   ├── tunnel_monitor
│   │   │   ├── chord.png
│   │   │   ├── CMakeLists.txt
│   │   │   ├── main.py
│   │   │   ├── monitor.c
│   │   │   ├── monitor.py
│   │   │   ├── README.md
│   │   │   ├── setup.sh
│   │   │   ├── simulation.py -> ../simulation.py
│   │   │   ├── traffic.sh
│   │   │   └── vxlan.jpg
│   │   ├── vlan_filter
│   │   │   ├── data-plane-tracing.c
│   │   │   ├── data-plane-tracing.py
│   │   │   ├── README.md
│   │   │   ├── scenario.jpg
│   │   │   ├── test_setup.sh
│   │   │   └── test_traffic.sh
│   │   ├── vlan_learning
│   │   │   ├── CMakeLists.txt
│   │   │   ├── README.txt
│   │   │   ├── simulation.py -> ../simulation.py
│   │   │   ├── vlan_learning.c
│   │   │   └── vlan_learning.py
│   │   └── xdp
│   │       ├── CMakeLists.txt
│   │       ├── xdp_drop_count.py
│   │       ├── xdp_macswap_count.py
│   │       ├── xdp_redirect_cpu.py
│   │       └── xdp_redirect_map.py
│   ├── perf
│   │   └── ipc.py
│   ├── ringbuf
│   │   ├── ringbuf_output.py
│   │   └── ringbuf_submit.py
│   ├── tracing
│   │   ├── biolatpcts_example.txt
│   │   ├── biolatpcts.py
│   │   ├── bitehist_example.txt
│   │   ├── bitehist.py
│   │   ├── CMakeLists.txt
│   │   ├── dddos_example.txt
│   │   ├── dddos.py
│   │   ├── disksnoop_example.txt
│   │   ├── disksnoop.py
│   │   ├── hello_fields.py
│   │   ├── hello_perf_output.py
│   │   ├── hello_perf_output_using_ns.py
│   │   ├── kvm_hypercall.py
│   │   ├── kvm_hypercall.txt
│   │   ├── mallocstacks.py
│   │   ├── mysqld_query_example.txt
│   │   ├── mysqld_query.py
│   │   ├── nflatency.py
│   │   ├── nodejs_http_server_example.txt
│   │   ├── nodejs_http_server.py
│   │   ├── stack_buildid_example.py
│   │   ├── stacksnoop_example.txt
│   │   ├── stacksnoop.py
│   │   ├── strlen_count.py
│   │   ├── strlen_hist_ifunc.py
│   │   ├── strlen_hist.py
│   │   ├── strlen_snoop.py
│   │   ├── sync_timing.py
│   │   ├── task_switch.c
│   │   ├── task_switch.py
│   │   ├── tcpv4connect_example.txt
│   │   ├── tcpv4connect.py
│   │   ├── trace_fields.py
│   │   ├── trace_perf_output.py
│   │   ├── undump_example.txt
│   │   ├── undump.py
│   │   ├── urandomread_example.txt
│   │   ├── urandomread-explicit.py
│   │   ├── urandomread.py
│   │   ├── vfsreadlat.c
│   │   ├── vfsreadlat_example.txt
│   │   └── vfsreadlat.py
│   └── usdt_sample
│       ├── CMakeLists.txt
│       ├── scripts
│       │   ├── bpf_text_shared.c
│       │   ├── lat_avg.py
│       │   ├── lat_dist.py
│       │   └── latency.py
│       ├── usdt_sample_app1
│       │   ├── CMakeLists.txt
│       │   └── main.cpp
│       ├── usdt_sample_lib1
│       │   ├── CMakeLists.txt
│       │   ├── include
│       │   │   └── usdt_sample_lib1
│       │   │       └── lib1.h
│       │   └── src
│       │       ├── lib1.cpp
│       │       ├── lib1_sdt.d
│       │       └── lib1_sdt.h
│       ├── usdt_sample.md
│       └── usdt_sample.sh
├── FAQ.txt
├── images
│   ├── bcc_tracing_tools_2016.png
│   ├── bcc_tracing_tools_2017.png
│   ├── bcc_tracing_tools_2019.png
│   ├── logo1.png
│   ├── logo1.svg
│   ├── logo2.png
│   └── logo2.svg
├── INSTALL.md
├── introspection
│   ├── bps.c
│   ├── bps_example.txt
│   └── CMakeLists.txt
├── libbpf-tools
│   ├── arm64
│   │   ├── vmlinux_608.h
│   │   └── vmlinux.h -> vmlinux_608.h
│   ├── bashreadline.bpf.c
│   ├── bashreadline.c
│   ├── bashreadline.h
│   ├── bindsnoop.bpf.c
│   ├── bindsnoop.c
│   ├── bindsnoop.h
│   ├── biolatency.bpf.c
│   ├── biolatency.c
│   ├── biolatency.h
│   ├── biopattern.bpf.c
│   ├── biopattern.c
│   ├── biopattern.h
│   ├── biosnoop.bpf.c
│   ├── biosnoop.c
│   ├── biosnoop.h
│   ├── biostacks.bpf.c
│   ├── biostacks.c
│   ├── biostacks.h
│   ├── biotop.bpf.c
│   ├── biotop.c
│   ├── biotop.h
│   ├── bitesize.bpf.c
│   ├── bitesize.c
│   ├── bitesize.h
│   ├── bits.bpf.h
│   ├── blazesym
│   ├── blk_types.h
│   ├── bpftool
│   ├── btf_helpers.c
│   ├── btf_helpers.h
│   ├── cachestat.bpf.c
│   ├── cachestat.c
│   ├── capable.bpf.c
│   ├── capable.c
│   ├── capable.h
│   ├── compat.bpf.h
│   ├── compat.c
│   ├── compat.h
│   ├── core_fixes.bpf.h
│   ├── cpudist.bpf.c
│   ├── cpudist.c
│   ├── cpudist.h
│   ├── cpufreq.bpf.c
│   ├── cpufreq.c
│   ├── cpufreq.h
│   ├── drsnoop.bpf.c
│   ├── drsnoop.c
│   ├── drsnoop_example.txt
│   ├── drsnoop.h
│   ├── errno_helpers.c
│   ├── errno_helpers.h
│   ├── execsnoop.bpf.c
│   ├── execsnoop.c
│   ├── execsnoop.h
│   ├── exitsnoop.bpf.c
│   ├── exitsnoop.c
│   ├── exitsnoop.h
│   ├── filelife.bpf.c
│   ├── filelife.c
│   ├── filelife.h
│   ├── filetop.bpf.c
│   ├── filetop.c
│   ├── filetop.h
│   ├── fsdist.bpf.c
│   ├── fsdist.c
│   ├── fsdist.h
│   ├── fsslower.bpf.c
│   ├── fsslower.c
│   ├── fsslower.h
│   ├── funclatency.bpf.c
│   ├── funclatency.c
│   ├── funclatency.h
│   ├── gethostlatency.bpf.c
│   ├── gethostlatency.c
│   ├── gethostlatency.h
│   ├── hardirqs.bpf.c
│   ├── hardirqs.c
│   ├── hardirqs.h
│   ├── javagc.bpf.c
│   ├── javagc.c
│   ├── javagc.h
│   ├── kernel.config
│   ├── klockstat.bpf.c
│   ├── klockstat.c
│   ├── klockstat.h
│   ├── ksnoop.bpf.c
│   ├── ksnoop.c
│   ├── ksnoop.h
│   ├── llcstat.bpf.c
│   ├── llcstat.c
│   ├── llcstat.h
│   ├── loongarch
│   │   ├── vmlinux_602.h
│   │   └── vmlinux.h -> vmlinux_602.h
│   ├── Makefile
│   ├── Makefile.btfgen
│   ├── map_helpers.c
│   ├── map_helpers.h
│   ├── maps.bpf.h
│   ├── mdflush.bpf.c
│   ├── mdflush.c
│   ├── mdflush.h
│   ├── memleak.bpf.c
│   ├── memleak.c
│   ├── memleak.h
│   ├── mountsnoop.bpf.c
│   ├── mountsnoop.c
│   ├── mountsnoop.h
│   ├── numamove.bpf.c
│   ├── numamove.c
│   ├── offcputime.bpf.c
│   ├── offcputime.c
│   ├── offcputime.h
│   ├── oomkill.bpf.c
│   ├── oomkill.c
│   ├── oomkill.h
│   ├── opensnoop.bpf.c
│   ├── opensnoop.c
│   ├── opensnoop.h
│   ├── powerpc
│   │   ├── vmlinux_600.h
│   │   └── vmlinux.h -> vmlinux_600.h
│   ├── readahead.bpf.c
│   ├── readahead.c
│   ├── readahead.h
│   ├── README.md
│   ├── riscv
│   │   ├── vmlinux_602.h
│   │   └── vmlinux.h -> vmlinux_602.h
│   ├── runqlat.bpf.c
│   ├── runqlat.c
│   ├── runqlat.h
│   ├── runqlen.bpf.c
│   ├── runqlen.c
│   ├── runqlen.h
│   ├── runqslower.bpf.c
│   ├── runqslower.c
│   ├── runqslower_example.txt
│   ├── runqslower.h
│   ├── sigsnoop.bpf.c
│   ├── sigsnoop.c
│   ├── sigsnoop_example.txt
│   ├── sigsnoop.h
│   ├── slabratetop.bpf.c
│   ├── slabratetop.c
│   ├── slabratetop.h
│   ├── softirqs.bpf.c
│   ├── softirqs.c
│   ├── softirqs.h
│   ├── solisten.bpf.c
│   ├── solisten.c
│   ├── solisten.h
│   ├── stat.h
│   ├── statsnoop.bpf.c
│   ├── statsnoop.c
│   ├── statsnoop.h
│   ├── syscall_helpers.c
│   ├── syscall_helpers.h
│   ├── syscount.bpf.c
│   ├── syscount.c
│   ├── syscount.h
│   ├── tcpconnect.bpf.c
│   ├── tcpconnect.c
│   ├── tcpconnect.h
│   ├── tcpconnlat.bpf.c
│   ├── tcpconnlat.c
│   ├── tcpconnlat.h
│   ├── tcplife.bpf.c
│   ├── tcplife.c
│   ├── tcplife.h
│   ├── tcppktlat.bpf.c
│   ├── tcppktlat.c
│   ├── tcppktlat_example.txt
│   ├── tcppktlat.h
│   ├── tcprtt.bpf.c
│   ├── tcprtt.c
│   ├── tcprtt.h
│   ├── tcpstates.bpf.c
│   ├── tcpstates.c
│   ├── tcpstates.h
│   ├── tcpsynbl.bpf.c
│   ├── tcpsynbl.c
│   ├── tcpsynbl.h
│   ├── tcptop.bpf.c
│   ├── tcptop.c
│   ├── tcptop.h
│   ├── tcptracer.bpf.c
│   ├── tcptracer.c
│   ├── tcptracer.h
│   ├── trace_helpers.c
│   ├── trace_helpers.h
│   ├── uprobe_helpers.c
│   ├── uprobe_helpers.h
│   ├── vfsstat.bpf.c
│   ├── vfsstat.c
│   ├── vfsstat.h
│   ├── wakeuptime.bpf.c
│   ├── wakeuptime.c
│   ├── wakeuptime.h
│   └── x86
│       ├── vmlinux_518.h
│       └── vmlinux.h -> vmlinux_518.h
├── LICENSE.txt
├── LINKS.md
├── man
│   ├── CMakeLists.txt
│   └── man8
│       ├── argdist.8
│       ├── bashreadline.8
│       ├── bindsnoop.8
│       ├── biolatency.8
│       ├── biolatpcts.8
│       ├── biopattern.8
│       ├── biosnoop.8
│       ├── biotop.8
│       ├── bitesize.8
│       ├── bpflist.8
│       ├── bps.8
│       ├── btrfsdist.8
│       ├── btrfsslower.8
│       ├── cachestat.8
│       ├── cachetop.8
│       ├── capable.8
│       ├── CMakeLists.txt
│       ├── cobjnew.8 -> uobjnew.8
│       ├── compactsnoop.8
│       ├── cpudist.8
│       ├── cpuunclaimed.8

……

│   ├── tcpsynbl.bpf.c
│   ├── tcpsynbl.c
│   ├── tcpsynbl.h
│   ├── tcptop.bpf.c
│   ├── tcptop.c
│   ├── tcptop.h
│   ├── tcptracer.bpf.c
│   ├── tcptracer.c
│   ├── tcptracer.h
│   ├── trace_helpers.c
│   ├── trace_helpers.h
│   ├── uprobe_helpers.c
│   ├── uprobe_helpers.h
│   ├── vfsstat.bpf.c
│   ├── vfsstat.c
│   ├── vfsstat.h   
│   ├── wakeuptime.bpf.c
│   ├── wakeuptime.c
│   ├── wakeuptime.h
│   └── x86
│       ├── vmlinux_518.h
│       └── vmlinux.h -> vmlinux_518.h
├── LICENSE.txt
├── LINKS.md
├── man
│   ├── CMakeLists.txt
│   └── man8
│       ├── argdist.8
│       ├── bashreadline.8
│       ├── bindsnoop.8
│       ├── biolatency.8
│       ├── biolatpcts.8
│       ├── biopattern.8
│       ├── biosnoop.8
│       ├── biotop.8
│       ├── bitesize.8
│       ├── bpflist.8
│       ├── bps.8
│       ├── btrfsdist.8
│       ├── btrfsslower.8
│       ├── cachestat.8
│       ├── cachetop.8
│       ├── capable.8
│       ├── CMakeLists.txt  
│       ├── cobjnew.8 -> uobjnew.8
│       ├── compactsnoop.8
│       ├── cpudist.8
│       ├── cpuunclaimed.8
82 directories, 1102 files

至此,BCC源码下载完成。

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

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

相关文章

【计算机网络】——传输层

//图片取自王道,仅做交流学习 一、传输层提供的服务 物理层、数据链路层、网络层是通信子网。 传输层:它属于面向通信部分的最高层,同时也是用户功能的最低层 为应用层提供通信服务使用网络层的服务 网络层提供主机之间的逻辑通信。 1、传输…

go sync.Map包装过的对象nil值的判断

被sync.Map包装过的nil 对象,是不能直接用if xxx nil的方式来判断的 func testnil() *interface{} {return nil }func main() {var ptr *interface{}test : testnil()//p &Person{}fmt.Printf("ptr 的值为 : %v\n", ptr)fmt.Printf("ptr 的值…

控价与数据分析的关系

品牌在做线上控价时,会面对许多的数据,如店铺数据、行业数据,当这些数据仅仅只是拿来做监测低价输出低价报表使用,是没有发挥其最大作用的,因为商品链接的字段较丰富,涉及的内容会包含销量、评价量、促销信…

pytorch环境搭建到pycharm项目映射配置(成功后回顾性记录/自用)

利用Anaconda创建pytorch虚拟环境 前提:成功安装Anaconda,确保可以打开NVIDIA控制面板 开始-》搜索“Anaconda Prompt” 打开后输入:conda create -n 你的虚拟环境名 python3.9。输入y,继续安装,完成。 输入&#…

容器适配器

除了顺序容器外,标准库还定义了三个顺序容器适配器:stack、queue和priority_queue适配器。适配器是标准库中的一个通用概念。容器、迭代器和函数都有适配器。适配器本质上是一种机制,能使某种事物的行为看起来像另外一种事物一样。 所有容器…

C++笔记之尾置返回类型(trailing return type)

C笔记之尾置返回类型(trailing return type) 文章目录 C笔记之尾置返回类型(trailing return type)1.尾置返回类型的一些示例用法2.尾置返回类型对泛型编程的好处3.尾置返回类型通常在以下情况下派上用场4.既然auto可以自动类型推断,那为什么还需要尾置返回类型&…

微调大型语言模型(一):为什么要微调(Why finetune)?

今天我们来学习Deeplearning的在线课程 微调大型语言模型(一)的第一课:为什么要微调(Why finetune)。 我们知道像GPT-3.5这样的大型语言模型(LLM)它所学到的知识截止到2021年9月,那么如果我们向ChatGPT询问2022年以后发生的事情,它可能会产生…

K8S-Pod 进阶

Pod 进阶 一、资源限制(业务cpu 内存)1.定义2.Pod 和 容器 的资源请求和限制3.CPU 资源单位4.内存 资源单位5.示例 二、健康检查:又称为探针(Probe)1.定义2.探针的三种规则:3.Probe支持三种检查方法4.示例 …

一位autosar开源爱好者(非本博主)

https://github.com/autoashttps://github.com/autoas该爱好者 Email: paraifoxmail.com 另外在https://club.rt-thread.org/ask/question/a124ee65268bed5f.html 汽车电子嵌入式操作系统符合Autosar规范的静态os:GaInOS 发布于 2013-01-03 22:09:11 …

vite + vue3 + js 搭建组件库 + 核心配置与使用

vite.config.js 这个官网有写 import { defineConfig } from vite import vue from vitejs/plugin-vue import path from "path" // https://vitejs.dev/config/ export default defineConfig({plugins: [vue()],server:{open:true, //自动打开浏览port:8088 //默认…

「大数据-0」虚拟机VMware安装、配置、使用、创建大数据集群教程

目录 一、下载VMware Wworkstation Pro 16 二、安装VMware Wworkstation Pro 16 三、检查与设置VMware的网卡 1. 检查 2. 设置VMware网段 四、在VMware上安装Linux虚拟机 五、对安装好的虚拟机进行设置 1. 打开设置 2. 设置中文 3. 修改字体大小 4. 修改终端字体大小 5. 关闭虚…

机器学习(18)---朴素贝叶斯

朴素贝叶斯 一、概述1.1 概率分类器1.2 贝叶斯工作原理1.3 贝叶斯的性质 二、sklearn中的朴素贝叶斯2.1 贝叶斯分类器2.2 高斯朴素贝叶斯GaussianNB2.3 探索贝叶斯:高斯朴素贝叶斯擅长的数据集2.4 探索贝叶斯:高斯朴素贝叶斯的拟合效果与运算速度 一、概…

Three.js 实现导出模型文件(.glb,.gltf)功能 GLTFExporter

Three.js提供了导出(.glb,.gltf)文件的API GLTFExporter 用于实现场景内容导出模型文件的功能 导出模型文件主要使用 parse 方法,该方法接收三个参数: 1.scene:要导出的场景对象。 2.onComplete:解析完成…

Deformable DETR(2020 ICLR)

Deformable DETR(2020 ICLR) detr训练epochs缩小十倍,小目标性能更好 Deformable attention 结合变形卷积的稀疏空间采样和Transformer的关系建模能力 使用多层级特征层特征,不需要使用FPN的设计(直接使用backbone多层级输出&a…

cgroup version jdk version k8s

bug info: in centos, linux 3.10, cgroup:v1, service works well. in ubuntu 22.04 LTS, linux 5, systemd:v2, service is always crash on boot, or running some minutes then killed by OOM. deploy.yaml文件相关内容: specify limits:memory 1000M in yaml, killed …

区域气象-大气化学在线耦合模式(WRFChem)在大气环境领域实践技术应用

随着我国经济快速发展,我国面临着日益严重的大气污染问题。近年来,严重的大气污染问题已经明显影响国计民生,引起政府、学界和人们越来越多的关注。大气污染是工农业生产、生活、交通、城市化等方面人为活动的综合结果,同时气象因…

Redis缓存相关问题

目录 缓存穿透 缓存雪崩 缓存击穿 Redis集群方案 主从复制Replication 哨兵sentinel 高可用介绍 Redis sentinel介绍 Redis sentinel使用 配置sentinel 启动sentinel 测试sentinel Redis内置集群cluster Redis cluster介绍 哈希槽方式分配数据 Redis cluster的…

ubuntu18.04 编译edk2项目下的intel架构bios

看了国内的edk2编译文章. 大不部分都是编译 用于虚拟机(qemu)或者模拟器上运行的 很少有编译edk2项目 出 真机的 bios 希望本文章对你有帮助, 请注意 github,com因为被墙了. 所有需要用gitee代替 参考来源 https://gitee.com/binout/edk2-platforms/tree/master https:/…

PHP8的类与对象的基本操作之类常量-PHP8知识详解

php 8引入了一种新的特性,称为类常量(class Constants)。类常量是在类中定义的常量,类似于全局常量,但作用域仅限于定义它们的类。 在PHP 8中,类常量的作用域被限制在定义它们的类中。这意味着只有类的成员…

【配电变电站的最佳位置和容量】基于遗传算法的最优配电变电站放置(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…