Популярное

Музыка Кино и Анимация Автомобили Животные Спорт Путешествия Игры Юмор

Интересные видео

2025 Сериалы Трейлеры Новости Как сделать Видеоуроки Diy своими руками

Топ запросов

смотреть а4 schoolboy runaway турецкий сериал смотреть мультфильмы эдисон
dTub
Скачать

Let's read the Linux socket source code

Автор: Ants Are Everywhere

Загружено: 2023-03-29

Просмотров: 4712

Описание:

In this live stream, we look at the source code for Linux's implementation of the Berkeley socket API. We also look at "socks" (no "et"), which seem to contain the lower-level implementation details for "sockets".

In a now time-honored tradition, I confuse the right and left shift operators. And @Raxneff Nextnerf and others help me out with some of the thornier details in the code.

Along the way, we take a detour to learn a bit about how to optimize C structs for cache locality.

Useful links:
Socket.h: https://github.com/torvalds/linux/blo...
Socket.c: https://github.com/torvalds/linux/blo...
Sock.h: https://github.com/torvalds/linux/blo...
Sock.c: https://github.com/torvalds/linux/blo...

Related videos:
Linux kernel:    • Let's read the Linux kernel source code  
TCP:    • Let's read the Linux TCP source code  

Sorry about the harsh sound on this video, I accidentally plugged my microphone into the wrong channel 🤦‍♂️.

Thanks for watching :)

‪@raxneff‬ put together the following timeline:

00:00:15 What this live show is about
00:03:28 socket.c
00:05:06 includes in socket.c
00:07:30 opening files
00:13:44 socket address families in socket.h
00:15:35 protocol families in socket.h
00:16:25 flags for send/recv in socket.h
00:17:13 setsockoptions level in socket.h
00:11:54 basic functions in socket.h
00:18:33 sockaddr in socket.h
00:19:32 sockaddr_storage in socket.h
00:20:02 msghdr in socket.h
00:24:06 Linux socket API
00:26:35 for_each_cmsghdr in socket.h (PLEASE, do not touch)
00:29:04 msg_data_left in socket.h
00:32:04 control message types in socket.h
00:32:49 recvmsg in socket.h
00:35:36 sendmsg lookup man page
00:38:49 What I think sock.h is about
00:39:23 includes in sock.h
00:40:34 SOCK_DEBUG in sock.h
00:41:04 socket_lock_t sock.h
00:42:59 sock_common struct in sock.h
00:49:22 SO_REUSEADDR lookup
00:43:10 for what the unions are used
00:53:03 tcp timewait lookup
00:55:51 sock.h (cont.)
00:56:07 sock structure in sock.h
00:58:45 we are in lower level land
01:02:11 sound issues
01:04:04 How ordering of elements in structs can help performance
01:09:18 back in sock.h
01:10:13 optimisation in sock.h and Google QUIC
01:15:04 CPU caches
01:22:09 further stuff in sock.h
01:23:11 sk_page_frag ... in sock.h
01:23:50 sk_pacing_shift_update and right-shift for ms
01:31:13 socket.c
01:32:30 file_operations ... in socket.c
01:34:22 spinlock in socket.c
01:34:40 support routines and audit_sockaddr in socket.c
01:35:17 sockfs_dname in socket.c
01:36:38 sock_alloc_file in socket.c
01:38:48 sock_sendmsg in socket.c
01:39:17 Linux Security Modules
01:39:53 socket.c (cont.)
01:40:35 __sock_recv_timestamp and more in socket.c
01:43:01 sock.c
01:43:03 includes in sock.c
01:45:20 sk_clear_memalloc in sock.c
01:46:26 timeout, netstamp, ... -stuff in sock.c
01:47:53 sk_setsockopt in sock.c
01:52:21 static_branch_unlikely lookup
01:56:45 outro and what comes next

Let's read the Linux socket source code

Поделиться в:

Доступные форматы для скачивания:

Скачать видео mp4

  • Информация по загрузке:

Скачать аудио mp3

Похожие видео

Let's read the Stack (Haskell) source code

Let's read the Stack (Haskell) source code

Let's read the Bash source code

Let's read the Bash source code

Let's read the Linux TCP source code

Let's read the Linux TCP source code

Debian: САМЫЙ СТАБИЛЬНЫЙ Linux и ТЁМНАЯ История Создателя

Debian: САМЫЙ СТАБИЛЬНЫЙ Linux и ТЁМНАЯ История Создателя

99% of Developers Don't Get Sockets

99% of Developers Don't Get Sockets

Опыт использования CachyOS: я точно не вернусь на Windows

Опыт использования CachyOS: я точно не вернусь на Windows

Как устроена компьютерная графика? OpenGL / C++

Как устроена компьютерная графика? OpenGL / C++

Adding Simple System Call in Linux Kernel

Adding Simple System Call in Linux Kernel

Linux Signals. I Spent 2 Years to Understand This Part.

Linux Signals. I Spent 2 Years to Understand This Part.

The Windows 11 Disaster That's Killing Microsoft

The Windows 11 Disaster That's Killing Microsoft

Let's read the Emacs source code

Let's read the Emacs source code

Программирование на ассемблере без операционной системы

Программирование на ассемблере без операционной системы

Как Ubuntu Предала Linux - Вся Правда о Взлёте и Падении Canonical

Как Ubuntu Предала Linux - Вся Правда о Взлёте и Падении Canonical

The Superpower of Unix Sockets

The Superpower of Unix Sockets

Необработанные разъемы - Саймон Буххайт

Необработанные разъемы - Саймон Буххайт

Как взломать любое программное обеспечение

Как взломать любое программное обеспечение

Linux network programming   Netlink socket and Netfilter  Part 1

Linux network programming Netlink socket and Netfilter Part 1

Network Performance in the Linux Kernel, Getting the most out of the Hardware

Network Performance in the Linux Kernel, Getting the most out of the Hardware

Typst: Современная замена Word и LaTeX, которую ждали 40 лет

Typst: Современная замена Word и LaTeX, которую ждали 40 лет

Покойся с миром, Arduino и Open Hardware... спасибо Qualcomm

Покойся с миром, Arduino и Open Hardware... спасибо Qualcomm

© 2025 dtub. Все права защищены.



  • Контакты
  • О нас
  • Политика конфиденциальности



Контакты для правообладателей: infodtube@gmail.com