Skip to main content

(2) System Calls

man syscalls

http://man7.org/linux/man-pages/man2/syscalls.2.html

msync

msync - synchronize a file with a memory map

msync() flushes changes made to the in-core copy of a file that was mapped into memory using mmap(2) back to the filesystem. Without use of this call, there is no guarantee that changes are written back before munmap(2) is called.

http://man7.org/linux/man-pages/man2/msync.2.html

bpf (berkeley packet filter) / eBPF (extended berkeley filter)

bpf - perform a command on an extended BPF map or program

The Berkeley Packet Filter(BPF) provides a raw interface to data link layers, permitting raw link-layer packets to be sent and received. It is available on most Unix-like operating systems. In addition, if the driver for the network interface supports promiscuous mode, it allows the interface to be put into that mode so that all packets on the network can be received, even those destined to other hosts.

BPF supports filtering packets, allowing a userspaceprocess to supply a filter program that specifies which packets it wants to receive. For example, a tcpdump process may only want to receive packets that initiate a TCP connection. BPF only returns packets that pass the filter that the process supplies. This avoids copying unwanted packets from the operating systemkernel to the process, greatly improving performance.

BPF is sometimes used to refer just to the filtering mechanism, rather than to the entire interface. Some systems, such as Linux and Tru64 UNIX, provide a raw interface to the data link layer other than the BPF raw interface but use the BPF filtering mechanisms for that raw interface

https://en.wikipedia.org/wiki/Berkeley_Packet_Filter

https://blog.cloudflare.com/cloudflare-architecture-and-how-bpf-eats-the-world

GitHub - cilium/hubble: Hubble - Network, Service & Security Observability for Kubernetes using eBPF