Understanding the C runtime memory model

preview_player
Показать описание
The origins of the C programming language date back to 1969. However, 50 years on there are still many misconceptions about certain aspects of the language, most notably the memory system.

In the video we look to take a deep-dive into understanding how a running C program uses the available memory, and how as programmers we can affect that model.

The video discusses both compile-time and run-time memory, showing how the compiler and linker come into play. It covers both how and when memory is allocated, initialised, used and released.

Importantly it distinguishes between hosted programs (typically running on Linux) and freestanding (better known as deeply-embedded or bare-metal) programs, both with and without threading.

It also differentiates the use of memory based on processor architectures.

Finally it looks at where memory issues arise and why most embedded C coding standards, such as MISRA-C, ban certain memory usage models.
Рекомендации по теме
Комментарии
Автор

I was studying Rust and they were talking about C run time, so I came here to understand what that is. So yes, I have understood it, and understood a lot more connecting OSes, compilers, and computer architecture together. Thank you, sir, for this quality lecture.

waliedahmed
Автор

Thank you for a very clear and direct explanation. Excellent content.

klas
Автор

Great content, and I appreciate it. I don't want to be a nuisance, but I wish the audio was better. It would be nice to revamp this with better audio. All the best!

dareason
Автор

This is a amazing content . thanks for sharing. The occasional black twitches in the video while watching in full screen got me paranoid if my system is executing some shell scripts that i didnt start... later found its from the video 😅😅 ..

wishadw
Автор

Thank you for sharing! 👍👍👍 Really high quality video material!

neimsaci
Автор

Could you pls suggest book that covers everything explained in this video

nileshgopnarayan
Автор

It's a great tutorial but a little hard to understand even with scripting turned on. The scripter itself has a hard time translating a lot of the words. Thank you very much for the content. It's a a bit of a shame and bit frustrating that I couldn't get all of it. Thank you for the great effort

shvideo
Автор

What's the difference of removing the unused automatics Vs. comment them out? Does the compiler treat these scenarios differently?

farmerwang
Автор

thank you very much. With a lot of respect towards you, next time, please take a bit more care with the audio, its quality is very poor. Thanks again, sir.

ClaudioParraGonzalez
Автор

Feabhas? Ar fheabhas! Go raibh míle maith agaibh leis eolas go han-mhaith!

christopherdaly
Автор

If you wanna avoid all these problems.. move to Rust :)

venkateswarans