This is the type of content the world needs, keep it up man!
The more you know and understand about how modern hardware and software works, the more unbelieveable it is.
Man your videos are diamonds.. I am so blessed that i found you
I have always wondered what the actual difference between threads and cores are, and YOU are the first one to explain it in a way that can be perfectly understood. Your animation style is also really great.
This was awesome, eagerly waiting for more videos. Thank you for explaining it in such detail while making it simple to visualise/understand 🙌
This is by far the best animation and explanation I have seen on YouTube about Process vs Threads
Dude i just went to your channel to see if the new threads video is out, and i see that it has been released 30 seconds ago :D
Another amazing video! I would suggest the following definition: "a thread is an execution context". I think that's a good way to think about threads because they provide everything needed to run the next instruction, like its own program counter, stack, and registers.
that's the most beautiful explanation i've ever seen or heard: with its beauty in explaining complex notions in a simple yet vivid way - colourful, using extensive graphics and succinct; and, what's more, DETAILED(!), meaning FINE-GRAINED
God damn... my lecture couldn't clear this concept in a whole semester, which you did in a single video. and now because of the animations, I would never forget it. God bless you man.
Thanks!
BRO Just to late 2 hours ago i have operating system exam and the question is why we need threads on single core porcessors.
In one of my computer science classes (several years ago), my teacher told me that a process can be used to share memory resources and a thread to share computing resources. Great video !
Best channel for PROgrammers
Thank you for another great video! No one asked, but here’s another example of data parallelism and why it can be useful. You can parallelize the following operations on a sequence: • map • filter • reduce Additionally, you can use parallel sorting algorithms, but not every sorting algorithm is suitable. Only those that align with the “divide and conquer” strategy can be effectively parallelized. For example, merge sort consists of two main operations: 1. Sort: This has a time complexity of O(n * log n) 2. Merge: This has a time complexity of O(n) You can perform the sorting phase in parallel processes and then merge the results in the main process, as merging is relatively efficient with its linear complexity O(n) Cheers!
even I know threads but I love your way of explain which made threads even more clear
I wish I had teachers like you and such nice video essays on hard topics back in my college days.
Great video ! I would recommend a small correction though. Around 14:30 you said that TEXT and DATA section are two regions that are never written too. This is mostly true, but remember that the data section is where static variables are stored. So if a Thread has to change a static variable it will write into the data section.
My god the amount of information packed in 16 minutes is insane. Thank you for the work you do!
@CoreDumpped