WHY IS THE STACK SO FAST?
Ғылым және технология
In this video we take a look at the Stack, which sometimes is called Hardware Stack, Call Stack, Program Stack....
Keep in mind that this is made for educational purposes, so many of the information is oversimplified for easy understanding.
Пікірлер: 388
For people disagreeing on the stack grown upwards (address) in the animation. As someone else commented: "Growing downwards is a convention from when computers had small memories and the stack was placed at the end of the data segment... nowadays the stack can be anywhere, but the convention stuck on, at the end of the day it makes no difference".
@geekzombie8795
3 ай бұрын
Did people not see your note at 9:03?
@ddopson
3 ай бұрын
That's a silly thing to disagree with. Up, down, it's a subjective choice unless you define which way the address range is incrementing.
@Luclecool123
2 ай бұрын
Also I think you confused internal and external fragmentation
@DennisHolmberg-sl1hz
2 ай бұрын
It's just as bad in real life; uptown, downtown. Up because why? North? South? Towards the mountains, or ocean? Meh, some arguments are really not worth the trouble, you adapt and move on; unless it is family, then frankly it's war. ☺
@leaks1965
2 ай бұрын
What you used to animate this video?
Code salesman: **Slaps roof of stack** "This bad boy can fit so much data in it."
there is severe lack of educational material on youtube that teach conceptual subject of software and programming, I'm glad I found your channel keep up the good work my friend !
@kimjinuk6324
3 ай бұрын
Nah you just need to know how to search properly and you will find gems
@euclid9492
3 ай бұрын
Definitely. There’s an overwhelming abundance of good videos for surface level beginner material because that’s where you get the most viewers. Once you get deeper into a topic there quickly becomes only a select few creators that are willing to make more difficult videos for a much smaller audience that is at that level.
@0LoneTech
3 ай бұрын
There's some excellent material, e.g. MIT OpenCourseWare. Of course quality is rarely recognized, let alone promoted.
@thesquee1838
2 ай бұрын
There is actually a huge depth of information. Just look around and maybe try and figure out exactly what to look for
@krellin
Ай бұрын
there is lack of people who care about it, i think there is plenty of content, though quality is not as in this video...
People who explain complex things in this simple way are considered a rare coin. You have gained a large number of subscribers with only three videos. Please continue, perhaps this channel will achieve great success.
Only 3 minutes in, but I've had dreams of a youtuber with such a beautiful and minimalistic style that doesn't just go over brief basics. Thank you! Edit: It's so deeply upsetting that the best and most interesting learning channels get such little attention
@Scrawlerism
3 ай бұрын
its the basics delivered to you by an ai voice lol. its nice but its not that nice.
These are some of the fundamentals that should be covered on any software development educational setting, specially when they're presented in such a visual fashion. Thank you for making this.
Masterly done, the best video about the stack. A gem. Unfortunely not all people are made to teach.
Thank you dearly for going over everything you did. Please don't ever feel pressured to summarize or assume the viewer knows, if everybody assumes that everybody already knows (as much of the programming world seems to do) information becomes insular and difficult to access. You're doing an amazing public service.
This was the PERFECT length and complexity for an introduction to this topic! Concise, yet doesnt presuppose a ton of knowledge, while also not delving into a bunch of side comments on details/scenarios that do nothing but stroke the creator's ego while confusing the audience :) JUST enough to know where the OS fits, types of memory, stack size constraints, etc., to understand the implications on performance and utilization, while still focusing solely on the stack itself. It leaves the viewer with tons of questions to learn more, but few to no questions about the content presented here. Bravo!
I really appreciate how considerable you are for mobile viewers. Many programming youtubers just show their computer screen and the letters of the code become miniscule
Incredible video! As a 4th year CS major, I haven’t seen such a detailed and intuitive description of the stack in any of my classes. Looking forward to the heap video!
It's just great! I watched other videos about the stack, understood how it works, but there were a lot of questions, and in this video you just visualized everything perfectly and explained it! I'm really looking forward to a video about a heap
More videos please! Your method keeps me from being overwhelmed.
Good educational and informative video, as always, nice job!
I’ve always been interested in programming on a conceptual level, but never really had the time or resources to research them myself (I’m just a hobbyist, who’s learning in my free-time). Your videos are very fun and interesting to me and I feel like I’m learning a lot from them. I’m very excited to see more in the future!
I've been looking for some explanation like this for years, so I could understand some concepts which didn't live my mind for all that time. And this channel just appeared in my recommendations. Thanks for very informative video.
This channel is GOLD 🔥! Now I know what the Cache, Swap etc is. True gold! Please keep making these videos ❤
I'm mainly only receptive to video educational content and I found yours to specifically resonate with my learning style. Earned a sub, well done.
This was such an amazing video. I really believe the way this video articulated each point and built up to the answer. The pace was also great. Please keep up these sort of educational low level videos!
Best video I’ve seen in a while. Perfect blend between programming and hardware information.
Great video, thanks for sharing this knowledge.
Amazingly done. I finally understand what on earth the stack even means. Why its so fast is secondary. Thank you for this !
i really like how elaborately you explain these concepts, as someone just getting into systems programming, your videos are really helpful to me
Dude, finding your channel was awesome. As a chemist who likes to code the repetitive homework stuff, learning these concepts is very nice insight. Thaaaaanks!
Excellent, as an embedded software dev, these kind of videos are a rare gem. Keep em coming
I incidentally did happen to know all of these things already, but you still get a like from me! The visuals are excellent and the topics are some of my favourite. I look forward to more like these!
This KZreadr is cracked mannn let’s go!!! Such a beautiful presentation of knowledge, thanks man! Keep doing what you doing brother 💪❤❤❤❤
I don't know what I'm doing but it's probably right cuz i got this video in my algorithm. I can't believe how low the subscribers are on this channel when the quality of your content is so high. The minimalistic style of animation is also a huge relief as compared to others who focus more on the animation than the explanation. This was a breeze of fresh air. Excited for the video about heap!!
I think this is the first video I've ever seen from this channel. Really liked it.
I love your teaching style and sense of humo...
This was such a great video. I learned this sort of stuff in university, but i always find it tough to brush up on outside of that environment. This was thorough, entertaining, and not bogged down by hardware specific implementation details. Subbed and looking forward to all of your future work 👍
I'm learning about memory allocation in c++. (self taught). I have watched numerous videos on stack / heap. They are all very confusing and the fact that you did this so well in such a short time is of great value to me. I know have a understanding of whether i want to choose stack or heap. I also understand why i would use the smallest primitive type possible so that the cache is not wasted. Very greatful. Thankyou
if teaching something an art, you are the artist. I speak python and now a days learning c++ just for fun and your videos explain a lot of things here.
Wow this was awesome! In all of the discussions on stacks and heaps I have heard online and in university I’ve never heard anybody explained that the CPU has a stack register. I can believe I didn’t know that. Makes a lot more sense why the access is so fast.
@Turalcar
2 ай бұрын
There are also register stacks. e.g. in SPARC. I could try to explain it in a comment but the Wikipedia article does it better.
That was the best explanation of memory stack I have ever seen.
Great vid! I have always wondered why I can't add to an array, this makes it perfectly clear to me
Your upload schedule is amazing. Keep up the good work.
wow i got recommended this video and damn it makes it so easy to understand with animations man THANK YOU!
Excellent work, pure content with simple description and impressive animation. You hit the point with every sentence. I'm looking forward to the "heap"
Best low level content on this platform. No question
Great video! Liked after hearing the proper use of the word “datum” at 8:28. 😉
Your clear explanations and diagrams in video are very intuitive! I have comprehend a lot of things than my university experience.. appreciate that!!!
This is a very well-made video about stacks. Nicely done. 5 gold stars for you.
You have earned my subscription, that was a better crash course than my SOEN classes
Your style of teaching is good. By starting with a misinformed premise, then correcting it, using it as cure against "this is why we don't just do that". This is typically the reason why I don't understand many concepts, not just in compsci. "why doesnt it just do *this*" and then I can't accept the information given to me because I think it is wrong information. This is important, because the way we learn is by building a tower of understanding using smaller blocks. If any of those blocks are wrong or misinformed, then the whole tower will fall down.
What a concise explanation accompanied by a very intuitive graphics! Kudos to you! Please continue delivering this kind of high quality videos 😊
Your style of explaining is quite comfortable to follow and easy to understand. Keep making these videos. Already subbed !
The stack usually grows downward from before the kernel, giving it plenty of space, and reducing the chance of a stack overflow. Theoretically, you could get the stack to loop back around, but even then, data grows upwards from right after the kernel, so you would have to fill your stack a lot, so that it loops around (I have seen examples where that is 524,288 memory locations, and that’s for a raspberry pi), and then have so many files that it is feasible that the stack will overwrite one.
This channel is like a breath of fresh air for someone like me who's trying to learn Rust but hasn't studied CS formally or been properly exposed to the fundamentals. I'm not a bootcamp graduate, I'm just a self-taught frontend dev who's trying to break into systems-level development. Keep up the great work ❤
@hindustaniyodha9023
3 ай бұрын
If you want to work with embedded systems, I would suggest you take an overview of OS and COA.
Exceptionally Great explaination with examples. Keep teaching stuff like this.
Great video, you are doing a great job explaining low level concepts in a very digestable way. I am excited to see your next videos
i am eagerly waitin for more your content, after working 9 years in the industry as app and web developer, I want to dive in low level programming, but only two channels I got which are educational, you and low level programming. keep posting
This is amazing, looking forward to learn more about optimisation and security
Great animations and concepts; brief, but thorough!
Most of this stuff I already knew. But I was always concerned about knowledge holes. The way you explain things in your heap video and ESPECIALLY this one reassured me of the things I knew, explained things I never questioned just enough to allow me to piece the rest together by myself and explain things I didn't know before so well I could just pick them up without issue. If I had to suggest one thing it would be to make followup episodes on topics to explain more advanced concepts. Like in which direction does the stack grow and why? How do function calls store data on the stack to return? What are stack cookies and how do they contribute to security against buffer overflows? How does malloc organize the heap? Stuff like that for example. You don't see this often on KZread at all. Take my sub! If I had the money I would become a member without second thought.
This was a really cool well explained video. Please do more of these!
awesome video, just like the last one. please do make a video about the heap and virtual memory. thank you, stay well
Best video ever! Keep this awesome channel growing!
Thank u for sharing this much brilliant knowledge. I’ve learned a lot from this video. Appriciate it 🥰
This has got to be one of the best videos I've watched on KZread concerning the art. Thank you so much. Do you have any book recommendations? Edit: And I hesitated to watch when it was recommended to me 3 days ago. Fast forward now I'm subscribed!
Thanks a lot for going into such detail. This video was so well crafted, definitely subbing. I was curious if you have any recommendations for other resources which go into systems concepts that you’d recommend
Hi George, love your videos. Thanks for this good work!
waaaaaaauw!!!!! neighter in university nor in any other place nobody explains that how stack works and how processor cache works. you're awesome bro.
Thank you very much~ I totally love this video. I finally make myself clearly understand these foundation knowledge;) I have been told again and again that allocating in stack is faster than in heap but no one try to tell me why before you XD. Thanks thanks thanks~
This is great. Easy to understand and follow.
Can't wait for the Heap video!! This was great
I’m sure that this videos are very hard to make, especially with all the illustrations and the animation but I have to say that you explain those topic in a very good way that I can easily understand. Keep the good job and I am waiting to see more of these videos in this topics which are very interesting
Very eloquent and detailed explanation. I liked the animation too. Keep it up!
this is some phenomenal explaination, i think its even better than my uni courses, well done, looking forward for more videos from you
How much background work and knowledge does it take to explain it so neatly? It's pretty amazing.
Another amazing video, thank you for your time and effort!❤
Superb video, thank you so much, love from India 🇮🇳🇮🇳🇮🇳
My new favorite channel. ❤
You boy this is dope as f# , please continue making videos it makes me excited for computer science
Amazing video and the visuals were really on point. Thanks!
holy.. i knew everything you said in this video but maaan.. that animation! love the video, sub clicked! teaching in a visualized way is the best!
Loved this video. Great explaination, high video quality and a wonderful illustration!
Great video! Really clear information and I like your humor lol
Very good video, the only point missing is why their is padding and memory alignment. The answer is that it is still cache related, but it's a little more complex so understandable it was not mentioned.
Very concise and logical pill of knowledge on topic with nice and clear animations. Very good job! Level of expected prior knowledge ideal for topic. Againg great job sir! No need to excuse for simplifications, level is exacat how should be for this form and topic.
Totally forgot that from my computer engineering class, as mindblown as in the auditorium back then :)
I'm so glad I found your channel! Slammed the "subscribe" button immediately! Thank you!
Dude wtf this is so good, please dont stop doing this
This is very educational, the type of knowledge that I am not taught. Please do a video about the CPU
While the computer voice is a bit strange at first, the video is definitely pure gold. honestly, it's awesome to see such great content on youtube, definitely keep up the good work! btw, it'd be awesome if you could add the sources to the description :D
This video is great also for those who already understands the concepts, because they always struggles to explain memory management of OS due to its complexity.
Great video. Love to see more!
Thanks for the knowledge!
Your making GPT smarter be careful lol. Love the video!.... were you one of the people laid off? The depth your explaining these concepts... is way above par. I'm flabbergasted. 🎉🎉🎉🎉🎉
the best explanation i have ever listened
This is great I was struggling to understand stack vs heap
This is a fantastic video. Thank you! Subscribed!
Keep it up man, i love the low level stuff
Good video. I just want to say that local scalar variables might not even end up in the stack. If their locality is small enough the compiler might decide to dedicate CPU registers for them. That’s why you sometimes get “this variable is optimized away” when trying to inspect it in a debugger.
hey your explantions are so good... please speak about virtual memory too in a next video ... thank you so much for making such amazing content and keep continuing doing the good work.. cheers
If my lecturer had taught computer architecture like this, i would have really loved this subject :3
Phenomenal video, wow, thank you!
Although I know the topic, it's interesting to watch this video. I like visualisations. Thanks, waiting for heap!
loved the video, could you expand on how to mantain locality code wise and the difference between software stack and hardware stack? maybe for future videos
Came here to learn about the stack, ended up learning the meaning of StackOverflow's logo.