1<!doctype html> 2<html lang="zh-CN"> 3<head> 4 <meta name="generator" content="Hugo 0.105.0">
vendor: 69 bytes, lines 4-6
4 5 6<script async src="https://www.googletagmanager.com/gtag/js?id=
6G-6WYFVP9TMD
vendor: 12 bytes, line 6
6"></script>
7<script> 8
vendor: 134 bytes, lines 8-12
8window.dataLayer = window.dataLayer || []; 9 function gtag(){dataLayer.push(arguments);} 10 gtag('js', new Date()); 11 12 gtag('config', '
12G-6WYFVP9TMD
vendor: 4 bytes, line 12
12');
13</script>
13 14 15 <meta charset="utf-8"> 16 <meta http-equiv="X-UA-Compatible" content="IE=edge"> 17 <meta name="viewport" content="width=device-width, initial-scale=1"> 18 19 <meta name="referrer" content="no-referrer-when-downgrade"> 20 21 22 <title>Head First eBPF | Linux/Kernel/XDP/BCC/BPFTrace/Cilium</title> 23 <meta property="og:title" content="Head First eBPF | Linux/Kernel/XDP/BCC/BPFTrace/Cilium"> 24 <meta property="og:type" content="website"> 25 <meta name="Keywords" content="cbpf,ebpf,bpf,kernel,kprobe,tracepoint,xdp,cilium,trace,tcpdump"> 26 <meta name="description" content="Head First BPF"> 27 <link rel="icon" href="/favicon.ico"> 28 <meta property="og:url" content="https://www.ebpf.top/en/"> 29 <link rel="shortcut icon" href='/favicon.ico' type="image/x-icon"> 30 31 <link rel="stylesheet" href='/css/normalize.css'> 32 <link rel="stylesheet" href='/css/style.css'> 33 <link rel="alternate" type="application/rss+xml" href="https://www.ebpf.top/en/index.xml" title="Head First eBPF" /> 34
34<script type="text/javascript" src="//cdn.bootcdn.net/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
34 35 36 37 38 39 40
40<script data-ad-client="ca-pub-2806255399860723" async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
40 41 42 43 44</head> 45 46 47<body> 48 <header id="header" class="clearfix"> 49 <div class="container"> 50 <div class="col-group"> 51 <div class="site-name "> 52 53 <h1> 54 <a id="logo" href="https://www.ebpf.top/"> 55 Head First eBPF 56 </a> 57 </h1> 58 59 <p class="description">Linux/Kernel/XDP/BCC/BPFTrace/Cilium</p> 60 </div> 61 <div> 62 <nav id="nav-menu" class="clearfix"> 63 <a class="current" href="https://www.ebpf.top/">Home</a> 64 65 <a href="https://www.ebpf.top/" title="䏿">䏿</a> 66 67 <a href="https://www.ebpf.top/about/" title="About">About</a> 68 69 </nav> 70 </div> 71 </div> 72 </div> 73</header> 74 75 <div id="body"> 76 <div class="container"> 77 <div class="col-group"> 78 79 <div class="col-8" id="main"> 80 81<div class="res-cons"> 82 83 84 <article class="post"> 85 <header> 86 <h1 class="post-title"> 87 <a href="https://www.ebpf.top/en/post/bpf_capabilities_debug/" title="Changes in Process Capabilities Using eBPF" target="_blank">Changes in Process Capabilities Using eBPF</a> 88 </h1> 89 </header> 90 91 <time datetime="2024-09-16T02:02:10Z" class="post-meta meta-date dt-published"> 92 2024-09-16 93 </time> 94 95 96<div class="post-meta meta-category"> 97 <span> |</span> 98 99 <a href='/categories/BPF' target="_blank">BPF</a> 100 101</div> 102 103 104 <div class="post-content"> 105 This article is available at: https://www.ebpf.top/post/bpf_capabilities_debug 106Author: kira skyler 107Introduction Unleash the Power of eBPF to Track Capability Changes Introduction In the Linux operating system, “capabilities” are a permission mechanism used for all privileges in the Linux system, finely divided into multiple independent permission bits. This way, users or processes can be granted only the specific permissions needed to perform specific tasks, without requiring all permissions. 108In the Linux capabilities system, permission assignments are divided into different sets, such as the Inheritable set, Permitted set, Effective set, Bounding set, and Ambient set. Each set controls the permissions of processes or threads in different scenarios. These capabilities may change under different circumstances, such as switching users, where a new user may likely have a different set of capabilities, and these sets may change according to different rules when creating child processes or executing new programs.â¦â¦ 109 </div> 110 <p class="readmore"><a href="https://www.ebpf.top/en/post/bpf_capabilities_debug/" target="_blank">Continue reading</a></p> 111 </article> 112 113 114 115 <article class="post"> 116 <header> 117 <h1 class="post-title"> 118 <a href="https://www.ebpf.top/en/post/bpf_sched_ext_dive_into/" title="BPF Scheduler sched_ext Implementation Mechanism, Scheduling Process, and Examples" target="_blank">BPF Scheduler sched_ext Implementation Mechanism, Scheduling Process, and Examples</a> 119 </h1> 120 </header> 121 122 <time datetime="2024-08-30T11:56:59Z" class="post-meta meta-date dt-published"> 123 2024-08-30 124 </time> 125 126 127<div class="post-meta meta-category"> 128 <span> |</span> 129 130 <a href='/categories/BPF' target="_blank">BPF</a> 131 132</div> 133 134 135 <div class="post-content"> 136 This article can be found at: https://www.ebpf.top/post/bpf_sched_ext_dive_into 137Linux Process Scheduler CFS Scheduler EEVDF Scheduler Implementation Mechanism of BPF Scheduler Extender sched_ext Addition 1: SCHED_EXT Scheduling Class Addition 2: eBPF Custom Scheduler Functions Workflow of SCHED_EXT Scheduling Class Scheduling Cycle Workflow Switching to sched_ext Summary In the article Linus Strongly Pushes for Inclusion: BPF Empowers Scheduler Success, we reviewed the journey of BPF in the scheduler integration process within the community. Patch V7 is prepared for merging into 6.11, and subsequently, the code repository has also changed to kernel git address. It is only a matter of time for the merge to happen. This blog post will focus on the implementation principles of sched_ext. sched_ext is an extensible scheduler class jointly introduced by Meta and Google, referred to as ext_sched_class or sched_ext. This mechanism allows users to optimize scheduler strategies for specific workloads or scenarios by implementing scheduling classes through defined BPF programs.â¦â¦ 138 </div> 139 <p class="readmore">
139<a href="https://www.ebpf.top/en/post/bpf_sched_ext_dive_into/" target="_blank">Continue reading</a></p> 140 </article> 141 142 143 144 <article class="post"> 145 <header> 146 <h1 class="post-title"> 147 <a href="https://www.ebpf.top/en/post/bpf_sched_ext/" title="Linus Makes a Decisive Move, BPF Empowering Scheduler Finally Comes to Fruition in 6.11 Merge" target="_blank">Linus Makes a Decisive Move, BPF Empowering Scheduler Finally Comes to Fruition in 6.11 Merge</a> 148 </h1> 149 </header> 150 151 <time datetime="2024-06-30T11:56:59Z" class="post-meta meta-date dt-published"> 152 2024-06-30 153 </time> 154 155 156<div class="post-meta meta-category"> 157 <span> |</span> 158 159 <a href='/categories/BPF' target="_blank">BPF</a> 160 161</div> 162 163 164 <div class="post-content"> 165 Read more at: https://www.ebpf.top/post/bpf_sched_ext 1661. The Emergence of Pluggable Scheduler [2004] In 2004, Con Kolivas from the Linux community proposed the idea of a pluggable scheduler, envisioning multiple schedulers in the kernel that users could choose during boot. The principle behind the patch submission involved splitting a significant amount of code into a common part in kernel/sched.c and a private part. It also included pointers in the scheduler.c file that directed functions handling scheduling tasks, which were invoked for various process events (fork(), exit(), etc.), to gather scheduling-related information. Implementing a new scheduler simply required writing replacement functions and integrating them. However, this submission faced strong opposition from community developer Ingo Molnar, who believed that having pluggable schedulers would discourage patches for scheduling domains and instead lead to separate schedulers for specific scenarios like NUMA scheduling and SMP scheduling. 167Ingo Molnar’s standpoint was clear: If everyone focuses on their own little family, the scheduler as a big family will lack organization and code contributions, leading to the existence of schedulers tailored to specific scenarios.â¦â¦ 168 </div> 169 <p class="readmore"><a href="https://www.ebpf.top/en/post/bpf_sched_ext/" target="_blank">Continue reading</a></p> 170 </article> 171 172 173 174 <article class="post"> 175 <header> 176 <h1 class="post-title"> 177 <a href="https://www.ebpf.top/en/post/bpf_rawtracepoint/" title="Introduction, Usage, and Examples of BPF Trace Mechanism Rawtracepoint" target="_blank">Introduction, Usage, and Examples of BPF Trace Mechanism Rawtracepoint</a> 178 </h1> 179 </header> 180 181 <time datetime="2024-03-09T04:34:12Z" class="post-meta meta-date dt-published"> 182 2024-03-09 183 </time> 184 185 186<div class="post-meta meta-category"> 187 <span> |</span> 188 189 <a href='/categories/BPF' target="_blank">BPF</a> 190 191</div> 192 193 194 <div class="post-content"> 195 Read the article at: https://www.ebpf.top/post/en/bpf_rawtracepoint 1961. Common Hook Types in eBPF Trace 2. BPF Rawtracepoint 2.1 Trace Performance Enhanced by 20% 2.2 Rawtracepoint Tracking Event Inspection and Quantity Statistics 2.3 Passing Parameter Changes 3. Example of Using rawtracepoint in BPF Programs 3.1 libbpf Library (Based on CO-RE) 3.2 Bpftrace Sample Code See Also 1. Common Hook Types in eBPF Trace eBPF allows tracing events in various categories within the trace domain as follows: 197Kernel static trace points tracepoint/rawtracepoint/btf-tracepoint Refer to /sys/kernel/tracing/available_events Kernel dynamic trace points k[ret]probe, fentry/fexit (based on BTF) Kprobe /sys/kernel/tracing/available_filter_functions User-space static trace points USDT Viewing method: readelf -n or bpftrace tool bpftrace -l 'usdt:/home/dave/ebpf/linux-tracing/usdt/main:*' User-space dynamic trace: u[ret]probe, obtainable via nm hello | grep main Performance monitoring counters PMC perf_event This article will focus on rawtracepoint within kernel static tracing, concluding with practical code examples using the libbpf development library and bpftrace.â¦â¦ 198 </div> 199 <p class="readmore">
199<a href="https://www.ebpf.top/en/post/bpf_rawtracepoint/" target="_blank">Continue reading</a></p> 200 </article> 201 202 203 204 <article class="post"> 205 <header> 206 <h1 class="post-title"> 207 <a href="https://www.ebpf.top/en/post/bpfman_fedora_40/" title="Introduction to BPF Manager (bpfman)" target="_blank">Introduction to BPF Manager (bpfman)</a> 208 </h1> 209 </header> 210 211 <time datetime="2024-01-30T05:04:00Z" class="post-meta meta-date dt-published"> 212 2024-01-30 213 </time> 214 215 216<div class="post-meta meta-category"> 217 <span> |</span> 218 219 <a href='/categories/BPF' target="_blank">BPF</a> 220 221</div> 222 223 224 <div class="post-content"> 225 Original Article: https://www.ebpf.top/post/bpfman_fedora_40 2261. Background 2. Introducing bpfman 3. Standalone Deployment Process 4. Kubernetes Cluster Deployment Process 5. Summary Appendix: bpfman Single Machine Verification Development Environment Setup Code Download and Compilation of bpfman Test program management functionality 1. Background Fedora 40 proposes bpfman as the default program manager. The open-source project bpfman provides a deeper understanding of the eBPF runtime state, making it easier to manage eBPF programs (including loading, unloading, and viewing runtime status). This proposal requires approval from the Fedora Engineering Steering Committee (FESCo), but if successful, bpfman is likely to appear in Fedora 40 in April to enhance eBPF management. 227So, what exactly is bpfman? This article will give you a brief introduction to bpfman and its working principles. 2282. Introducing bpfman Originally named bpfd, bpfman is developed based on the Rust Aya library, using the Rust programming language.â¦â¦ 229 </div> 230 <p class="readmore"><a href="https://www.ebpf.top/en/post/bpfman_fedora_40/" target="_blank">Continue reading</a></p> 231 </article> 232 233 234 235 <article class="post"> 236 <header> 237 <h1 class="post-title"> 238 <a href="https://www.ebpf.top/en/post/network_and_bpf_2024/" title="eBPF and Network Trends Forecast for 2024" target="_blank">eBPF and Network Trends Forecast for 2024</a> 239 </h1> 240 </header> 241 242 <time datetime="2024-01-21T14:21:30Z" class="post-meta meta-date dt-published"> 243 2024-01-21 244 </time> 245 246 247<div class="post-meta meta-category"> 248 <span> |</span> 249 250 <a href='/categories/BPF' target="_blank">BPF</a> 251 252</div> 253 254 255 <div class="post-content"> 256 Article address: https://www.ebpf.top/post/network_and_bpf_2024 2571. eBPF 1.1 Exponential Growth of eBPF 1.2 eBPF Application Market 1.3 Wider Application of eBPF in Mobile Devices 1.4 Risks of eBPF Abuse 2. Observability 2.1 The Most Popular Topic: Observability 2.2 Reducing Observability Overhead 2.3 Context-Aware Kubernetes Workloads 2.4 AI-Assisted Network Troubleshooting 3. Networking 3.1 Container Networking Performance Matching Host Networking Performance 3.2 Transformation in the Networking Industry 3.3 Cilium in Home Environments 3.4 Network Operators Seeking LLM Help - Not All Roses 4. Cloud Native 4.1 Kubernetes Users Pushing Back on Complexity 4.2 IPv6-Only Kubernetes Clusters Becoming More Common 4.3 Rapid Growth of WSAM 4.4 The Not-to-Be-Forgotten Heterogeneous Networks 4.5 The Challenges of Platform Engineering and Network Growth In early 2024, Nico Vibert, Senior Sales Engineer at Isovalent, made some predictions about networks and eBPF. Here, we’ll briefly outline some important conclusions, mainly related to eBPF/Cilium/cloud-native/network/observability, and security areas.â¦â¦ 258 </div> 259 <p class="readmore"><a href="https://www.ebpf.top/en/post/network_and_bpf_2024/" target="_blank">Continue reading</a></p> 260 </article> 261 262 263 264 <article class="post"> 265 <header> 266 <h1 class="post-title"> 267 <a href="https://www.ebpf.top/en/post/top_and_tricks_for_bpf_libbpf/" title="Advanced Tips for Writing BPF Applications with libbpf" target="_blank">Advanced Tips for Writing BPF Applications with libbpf</a> 268 </h1> 269 </header> 270 271 <time datetime="2024-01-12T02:08:49Z" class="post-meta meta-date dt-published"> 272 2024-01-12 273 </time> 274 275 276<div class="post-meta meta-category"> 277 <span> |</span> 278 279 <a href='/categories/BPF' target="_blank">BPF</a> 280 281</div> 282 283 284 <div class="post-content">
285 Program Framework (Skeleton) Combine the Open and Loader Stages Selective Attachment (Attach) Custom load and attach Multiple BPF handlers for the same event Map Reduce pre-allocation overhead Determining Map Size at Runtime Per-CPU Global Variables Note on accessing fields directly through pointers Conclusion Link to this article: https://www.ebpf.top/post/top_and_tricks_for_bpf_libbpf 286Original article: https://www.pingcap.com/blog/tips-and-tricks-for-writing-linux-bpf-applications-with-libbpf/ 287In the early days of 2020, when I was using the BCC tool to analyze our database’s performance bottlenecks and pulled code from GitHub, I unexpectedly found an extra libbpf-tools directory in the BCC project. I studied the articles on BPF Portability and BCC to libbpf Conversion and transformed the previously submitted bcc-tools into libbpf-tools based on the knowledge I had gained. Finally, I completed the conversion work for nearly 20 tools (see Why We Switched from BCC-Tools to libbpf-Tools for BPF Performance Analysis). 288During this process, I was fortunate to receive a lot of help from Andrii Nakryiko (the person in charge of the libbpf + BPF CO-RE project).â¦â¦ 289 </div> 290 <p class="readmore"><a href="https://www.ebpf.top/en/post/top_and_tricks_for_bpf_libbpf/" target="_blank">Continue reading</a></p> 291 </article> 292 293 294 295 <article class="post"> 296 <header> 297 <h1 class="post-title"> 298 <a href="https://www.ebpf.top/en/post/lsm_bpf_intro/" title="Practical Guide to LSM BPF" target="_blank">Practical Guide to LSM BPF</a> 299 </h1> 300 </header> 301 302 <time datetime="2024-01-04T07:49:27Z" class="post-meta meta-date dt-published"> 303 2024-01-04 304 </time> 305 306 307<div class="post-meta meta-category"> 308 <span> |</span> 309 310 <a href='/categories/BPF' target="_blank">BPF</a> 311 312 <a href='/categories/security' target="_blank">security</a> 313 314</div> 315 316 317 <div class="post-content"> 318 This article is available at: https://www.ebpf.top/post/lsm_bpf_intro
3191. Background on Security 2. General Framework of Kernel Security Policy Module LSM 2.1 Introduction to LSM Framework 2.2 Architecture of LSM 2.3 Hook Functions in LSM 3. LSM BPF 3.1 BCC Practice 3.2 libbpf-bootstrap Framework Practice 4. Summary 5. Appendix: Process of Finding LSM Hot Patch Kernel Vulnerabilities Monitoring Hook Points 1. Background on Security Internationally, computer security is summarized by three main characteristics: Confidentiality, Integrity, and Availability (CIA). 320Confidentiality means that data is not visible to unauthorized individuals. Integrity refers to information not being altered during storage or transmission. Availability implies that one’s devices can be used when needed. There are roughly four methods that computer systems employ to address security challenges: isolation, control, auditing, and obfuscation. 321Access control involves controlling access, representing the subject’s actions on objects. Access control primarily involves defining subjects and objects, operations, and setting access policies.â¦â¦ 322 </div> 323 <p class="readmore"><a href="https://www.ebpf.top/en/post/lsm_bpf_intro/" target="_blank">Continue reading</a></p> 324 </article> 325 326 327 328 <article class="post"> 329 <header> 330 <h1 class="post-title"> 331 <a href="https://www.ebpf.top/en/post/cisco_and_isovalent/" title="Cisco to Acquire Isovalent, Parent Company of Cilium, Expected to Complete in Q3 2024" target="_blank">Cisco to Acquire Isovalent, Parent Company of Cilium, Expected to Complete in Q3 2024</a> 332 </h1> 333 </header> 334 335 <time datetime="2023-12-22T10:23:32Z" class="post-meta meta-date dt-published"> 336 2023-12-22 337 </time> 338 339 340<div class="post-meta meta-category"> 341 <span> |</span> 342 343 <a href='/categories/BPF' target="_blank">BPF</a> 344 345</div> 346 347 348 <div class="post-content"> 349 Article link: https://www.ebpf.top/en/post/cisco_and_isovalent 350On December 21, 2023, Thomas Graf, CTO & Co-founder of Isovalent, and Tom Gillis, Senior Vice President and General Manager of Cisco’s Security Business Group, announced on their respective company websites Cisco’s plan to acquire Isovalent. The acquisition price was not disclosed by either party. Following the completion of the acquisition, the Isovalent team is set to join Cisco’s Security Business Group, with the acquisition expected to be finalized in the third quarter of the 2024 fiscal year. Cisco has a history with Isovalent, having participated in Isovalent’s $29 million Series A funding at the end of 2020. Subsequently, in 2022, Cisco, along with Microsoft, Google, and other companies, added $40 million in the Isaolvent’s Series B funding. 351Cisco aims to enhance its capabilities in multi-cloud networking and security through this acquisition. The collaboration between Cisco and Isovalent will leverage the power of Cilium’s open-source technology to create uniquely advanced multi-cloud security and networking functionalities, aiding customers in simplifying and accelerating their digital transformation journey.â¦â¦ 352 </div> 353 <p class="readmore"><a href="https://www.ebpf.top/en/post/cisco_and_isovalent/" target="_blank">Continue reading</a></p> 354 </article> 355 356 357 358 <article class="post"> 359 <header> 360 <h1 class="post-title"> 361 <a href="https://www.ebpf.top/en/post/cpu_io_wait/" title="What? I/O Wait â I/O Bottleneck?" target="_blank">What? I/O Wait â I/O Bottleneck?</a> 362 </h1> 363 </header> 364 365 <time datetime="2023-12-22T10:14:18Z" class="post-meta meta-date dt-published"> 366 2023-12-22 367 </time> 368 369 370<div class="post-meta meta-category"> 371 <span> |</span> 372 373 <a href='/categories/system' target="_blank">system</a> 374 375</div> 376 377 378 <div class="post-content"> 379 Read more at: https://www.ebpf.top/post/cpu_io_wait 3801. Definition of I/O Wait 2. Test and Verification 3. Further Clarification on Disk Throughput and Processes with High I/O FrequencyAfter identifying process I/O wait conditions through the vmstat b column, we can further define them using iostat and iotop. 4. Analysis of Kernel CPU Statistics Implementation 5. Conclusion References 1. Definition of I/O Wait I/O Wait is a performance metric for a single CPU, indicating the idle time consumed when threads in the CPU dispatch queue (in the sleep state) are blocked on disk I/O. The CPU’s idle time is divided into truly idle time and time spent blocked on disk I/O. A higher CPU I/O Wait time indicates a possible bottleneck in the disk, causing the CPU to wait idle. If you find this definition a bit confusing, then please continue reading. I believe that after you read the testing and verification process in this article, your understanding of the above definition will be different.â¦â¦ 381 </div> 382 <p class="readmore">
382<a href="https://www.ebpf.top/en/post/cpu_io_wait/" target="_blank">Continue reading</a></p> 383 </article> 384 385 386 387 388 389 390<ol class="page-navigator"> 391 392 393 394 <li class="current"> 395 <a href="https://www.ebpf.top/en/">1</a> 396 </li> 397 398 <li > 399 <a href="https://www.ebpf.top/en/page/2/">2</a> 400 </li> 401 402 403 404 <li class="next"> 405 <a href="https://www.ebpf.top/en/page/2/">Next</a> 406 </li> 407 408</ol> 409 410 411 412</div> 413 414 <footer id="footer"> 415 <div> 416 © 2026 <a href="https://www.ebpf.top/">Head First eBPF By DavidDi</a> 417 418 | <a rel="nofollow" target="_blank" href="http://beian.miit.gov.cn/">沪ICPå¤16004584å·-2</a> 419 420 </div> 421 <br /> 422 <div> 423 <div class="github-badge"> 424 <a href="https://gohugo.io/" target="_black" rel="nofollow"><span class="badge-subject">Powered by</span><span class="badge-value bg-blue">Hugo</span></a> 425 </div> 426 <div class="github-badge"> 427 <a href="https://www.flysnow.org/" target="_black"><span class="badge-subject">Design by</span><span class="badge-value bg-brightgreen">é£éªæ æ </span></a> 428 </div> 429 <div class="github-badge"> 430 <a href="https://github.com/flysnow-org/maupassant-hugo" target="_black"><span class="badge-subject">Theme</span><span class="badge-value bg-yellowgreen">Maupassant</span></a> 431 </div> 432 </div> 433</footer> 434 435 436 437<a id="rocket" href="#top"></a>
438<script type="text/javascript" src='/js/totop.js?v=0.0.0' async=""></script>
438 439 440 441
441<script type="text/javascript" src="//busuanzi.ibruce.info/busuanzi/2.3/busuanzi.pure.mini.js" async></script>
441 442 443 444 445 446
446<script src='/js/baidu_tongji.js'></script>
446 447 448 </div> 449 450 <div id="secondary"> 451 <section class="widget"> 452 <form id="search" action='//www.google.com/search' method="get" accept-charset="utf-8" target="_blank" _lpchecked="1"> 453 454 <input type="text" name="q" maxlength="20" placeholder="Search"> 455 <input type="hidden" name="sitesearch" value="https://www.ebpf.top/"> 456 <button type="submit" class="submit icon-search"></button> 457</form> 458 </section> 459 460 <section class="widget"> 461 <h3 class="widget-title">Latest articles</h3> 462<ul class="widget-list"> 463 464 <li> 465 <a href="https://www.ebpf.top/en/post/bpf_capabilities_debug/" title="Changes in Process Capabilities Using eBPF" target="_blank">Changes in Process Capabilities Using eBPF</a> 466 </li> 467 468 <li> 469 <a href="https://www.ebpf.top/en/post/bpf_sched_ext_dive_into/" title="BPF Scheduler sched_ext Implementation Mechanism, Scheduling Process, and Examples" target="_blank">BPF Scheduler sched_ext Implementation Mechanism, Scheduling Process, and Examples</a> 470 </li> 471 472 <li> 473 <a href="https://www.ebpf.top/en/post/bpf_sched_ext/" title="Linus Makes a Decisive Move, BPF Empowering Scheduler Finally Comes to Fruition in 6.11 Merge" target="_blank">Linus Makes a Decisive Move, BPF Empowering Scheduler Finally Comes to Fruition in 6.11 Merge</a> 474 </li> 475 476 <li> 477 <a href="https://www.ebpf.top/en/post/bpf_rawtracepoint/" title="Introduction, Usage, and Examples of BPF Trace Mechanism Rawtracepoint" target="_blank">Introduction, Usage, and Examples of BPF Trace Mechanism Rawtracepoint</a> 478 </li> 479 480 <li> 481 <a href="https://www.ebpf.top/en/post/bpfman_fedora_40/" title="Introduction to BPF Manager (bpfman)" target="_blank">Introduction to BPF Manager (bpfman)</a> 482 </li> 483 484 <li> 485 <a href="https://www.ebpf.top/en/post/network_and_bpf_2024/" title="eBPF and Network Trends Forecast for 2024" target="_blank">eBPF and Network Trends Forecast for 2024</a> 486 </li> 487 488 <li> 489 <a href="https://www.ebpf.top/en/post/top_and_tricks_for_bpf_libbpf/" title="Advanced Tips for Writing BPF Applications with libbpf" target="_blank">Advanced Tips for Writing BPF Applications with libbpf</a> 490 </li> 491 492 <li> 493 <a href="https://www.ebpf.top/en/post/lsm_bpf_intro/" title="Practical Guide to LSM BPF" target="_blank">Practical Guide to LSM BPF</a> 494 </li> 495 496 <li> 497 <a href="https://www.ebpf.top/en/post/cisco_and_isovalent/" title="Cisco to Acquire Isovalent, Parent Company of Cilium, Expected to Complete in Q3 2024" target="_blank">Cisco to Acquire Isovalent, Parent Company of Cilium, Expected to Complete in Q3 2024</a> 498 </li> 499 500 <li> 501 <a href="https://www.ebpf.top/en/post/cpu_io_wait/" title="What? I/O Wait â I/O Bottleneck?" target="_blank">What? I/O Wait â I/O Bottleneck?</a> 502 </li> 503 504</ul> 505 </section> 506 507 508 509 <section class="widget"> 510 <h3 class="widget-title"><a href='/categories/'>Categories</a></h3> 511<ul class="widget-list"> 512 513 <li><a href="https://www.ebpf.top/en/categories/BPF/">BPF (13)</a></li> 514 515 <li><a href="https://www.ebpf.top/en/categories/debug/">debug (2)</a></li> 516 517 <li><a href="https://www.ebpf.top/en/categories/ebpf/">ebpf (1)</a></li> 518 519 <li><a href="https://www.ebpf.top/en/categories/ebpf-overview/">ebpf-overview (1)</a></li> 520 521 <li><a href="https://www.ebpf.top/en/categories/foundation/">foundation (1)</a></li> 522 523 <li><a href="https://www.ebpf.top/en/categories/network/">network (1)</a></li> 524 525 <li><a href="https://www.ebpf.top/en/categories/security/">security (1)</a></li> 526 527 <li><a href="https://www.ebpf.top/en/categories/system/">system (2)</a></li> 528 529 <li><a href="https://www.ebpf.top/en/categories/tool/">tool (1)</a></li> 530 531</ul> 532 </section> 533 534 <section class="widget"> 535 <h3 class="widget-title"><a href='/tags/'>Tags</a></h3> 536<div class="tagcloud"> 537 538 <a href="https://www.ebpf.top/en/tags/bpf/">bpf</a> 539
540 <a href="https://www.ebpf.top/en/tags/LSM/">LSM</a> 541 542 <a href="https://www.ebpf.top/en/tags/bpf/">bpf</a> 543 544 <a href="https://www.ebpf.top/en/tags/bpf2bpf/">bpf2bpf</a> 545 546 <a href="https://www.ebpf.top/en/tags/bpfman/">bpfman</a> 547 548 <a href="https://www.ebpf.top/en/tags/chatgpt/">chatgpt</a> 549 550 <a href="https://www.ebpf.top/en/tags/ebpf/">ebpf</a> 551 552 <a href="https://www.ebpf.top/en/tags/ftrace/">ftrace</a> 553 554 <a href="https://www.ebpf.top/en/tags/linux/">linux</a> 555 556 <a href="https://www.ebpf.top/en/tags/perf_tools/">perf_tools</a> 557 558 <a href="https://www.ebpf.top/en/tags/rawtracepoint/">rawtracepoint</a> 559 560 <a href="https://www.ebpf.top/en/tags/sched_ext/">sched_ext</a> 561 562 <a href="https://www.ebpf.top/en/tags/system/">system</a> 563 564 <a href="https://www.ebpf.top/en/tags/tail_call/">tail_call</a> 565 566 <a href="https://www.ebpf.top/en/tags/trace/">trace</a> 567 568 <a href="https://www.ebpf.top/en/tags/tracepoint/">tracepoint</a> 569 570</div> 571 </section> 572 573 574<section class="widget"> 575 <h3 class="widget-title">Links</h3> 576 <ul class="widget-list"> 577 578 <li> 579 <a target="_blank" href="https://www.do1618.com/" title="ç¨åºå°è±¡">ç¨åºå°è±¡çå客</a> 580 </li> 581 582 </ul> 583</section> 584 585 586 <section class="widget"> 587 <h3 class="widget-title">Meta</h3> 588 <ul class="widget-list"> 589 <li><a href="https://www.ebpf.top/index.xml">RSS</a></li> 590 </ul> 591 </section> 592</div> 593 </div> 594 </div> 595 </div> 596</body> 597 598</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.