Mettez-vous hors ligne avec l'application Player FM !
The Anatomy of a Write Operation
Manage episode 521795379 series 3474159
This story was originally published on HackerNoon at: https://hackernoon.com/the-anatomy-of-a-write-operation.
When file.write() returns, your data isn't on disk. Trace the 6-layer journey of a write operation from Python buffers to Linux kernel and SSD silicon.
Check more stories related to programming at: https://hackernoon.com/c/programming. You can also check exclusive content about #python, #linux, #operating-systems, #io-operations, #data-structures, #linux-kernel, #file.write(), #write-operation, and more.
This story was written by: @natarajmocherla. Learn more about this writer by checking @natarajmocherla's about page, and for more stories, please visit hackernoon.com.
When you write to a file in Python, the "success" return value is an illusion. Your data hasn't actually hit the disk; it has merely entered a complex relay race of buffers. This article traces the lifecycle of a write operation across six layers: Python's internal memory, the Linux Virtual File System, the Page Cache, the Ext4 filesystem, the Block Layer, and finally the SSD controller. We explore why the OS prioritizes speed over safety and why you must use os.fsync() if you need a guarantee that your data has survived power loss.
462 episodes
Manage episode 521795379 series 3474159
This story was originally published on HackerNoon at: https://hackernoon.com/the-anatomy-of-a-write-operation.
When file.write() returns, your data isn't on disk. Trace the 6-layer journey of a write operation from Python buffers to Linux kernel and SSD silicon.
Check more stories related to programming at: https://hackernoon.com/c/programming. You can also check exclusive content about #python, #linux, #operating-systems, #io-operations, #data-structures, #linux-kernel, #file.write(), #write-operation, and more.
This story was written by: @natarajmocherla. Learn more about this writer by checking @natarajmocherla's about page, and for more stories, please visit hackernoon.com.
When you write to a file in Python, the "success" return value is an illusion. Your data hasn't actually hit the disk; it has merely entered a complex relay race of buffers. This article traces the lifecycle of a write operation across six layers: Python's internal memory, the Linux Virtual File System, the Page Cache, the Ext4 filesystem, the Block Layer, and finally the SSD controller. We explore why the OS prioritizes speed over safety and why you must use os.fsync() if you need a guarantee that your data has survived power loss.
462 episodes
Semua episod
×Bienvenue sur Lecteur FM!
Lecteur FM recherche sur Internet des podcasts de haute qualité que vous pourrez apprécier dès maintenant. C'est la meilleure application de podcast et fonctionne sur Android, iPhone et le Web. Inscrivez-vous pour synchroniser les abonnements sur tous les appareils.