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

  • @CoreDumpped
    @CoreDumpped3 ай бұрын

    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

    @geekzombie8795

    3 ай бұрын

    Did people not see your note at 9:03?

  • @ddopson

    @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

    @Luclecool123

    2 ай бұрын

    Also I think you confused internal and external fragmentation

  • @DennisHolmberg-sl1hz

    @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

    @leaks1965

    2 ай бұрын

    What you used to animate this video?

  • @wrathofainz
    @wrathofainz3 ай бұрын

    Code salesman: **Slaps roof of stack** "This bad boy can fit so much data in it."

  • @fahoudey
    @fahoudey3 ай бұрын

    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

    @kimjinuk6324

    3 ай бұрын

    Nah you just need to know how to search properly and you will find gems

  • @euclid9492

    @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

    @0LoneTech

    3 ай бұрын

    There's some excellent material, e.g. MIT OpenCourseWare. Of course quality is rarely recognized, let alone promoted.

  • @thesquee1838

    @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

    @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...

  • @makadi86
    @makadi863 ай бұрын

    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.

  • @adansmith5299
    @adansmith52993 ай бұрын

    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

    @Scrawlerism

    3 ай бұрын

    its the basics delivered to you by an ai voice lol. its nice but its not that nice.

  • @DS-rd8ud
    @DS-rd8ud3 ай бұрын

    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.

  • @Byynx
    @Byynx2 ай бұрын

    Masterly done, the best video about the stack. A gem. Unfortunely not all people are made to teach.

  • @techno_tuna
    @techno_tuna3 ай бұрын

    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.

  • @CaptTerrific
    @CaptTerrific3 ай бұрын

    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!

  • @pedroivog.s.6870
    @pedroivog.s.68702 ай бұрын

    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

  • @mutt8553
    @mutt85533 ай бұрын

    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!

  • @magwoo3281
    @magwoo32813 ай бұрын

    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

  • @bruford911
    @bruford9119 күн бұрын

    More videos please! Your method keeps me from being overwhelmed.

  • @devilish_crow
    @devilish_crow3 ай бұрын

    Good educational and informative video, as always, nice job!

  • @falthramheraldofcalamity3051
    @falthramheraldofcalamity30513 ай бұрын

    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!

  • @IIIA_KO
    @IIIA_KO3 ай бұрын

    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.

  • @reold
    @reold3 ай бұрын

    This channel is GOLD 🔥! Now I know what the Cache, Swap etc is. True gold! Please keep making these videos ❤

  • @TeamRocketPokeMMO
    @TeamRocketPokeMMO3 ай бұрын

    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.

  • @byetaeyang
    @byetaeyang3 ай бұрын

    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!

  • @himanshupradhan5796
    @himanshupradhan57963 ай бұрын

    Best video I’ve seen in a while. Perfect blend between programming and hardware information.

  • @CaioCodes
    @CaioCodes3 ай бұрын

    Great video, thanks for sharing this knowledge.

  • @ishaangupta4166
    @ishaangupta41663 ай бұрын

    Amazingly done. I finally understand what on earth the stack even means. Why its so fast is secondary. Thank you for this !

  • @zweizweidreizweidreinull
    @zweizweidreizweidreinull3 ай бұрын

    i really like how elaborately you explain these concepts, as someone just getting into systems programming, your videos are really helpful to me

  • @PMuXeA
    @PMuXeA3 ай бұрын

    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!

  • @guruG509
    @guruG509Ай бұрын

    Excellent, as an embedded software dev, these kind of videos are a rare gem. Keep em coming

  • @cinderwolf32
    @cinderwolf323 ай бұрын

    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!

  • @Hellbending
    @Hellbending3 ай бұрын

    This KZreadr is cracked mannn let’s go!!! Such a beautiful presentation of knowledge, thanks man! Keep doing what you doing brother 💪❤❤❤❤

  • @Dazed_04
    @Dazed_043 ай бұрын

    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!!

  • @cedricvereecke6108
    @cedricvereecke61083 ай бұрын

    I think this is the first video I've ever seen from this channel. Really liked it.

  • @psionic111
    @psionic1113 ай бұрын

    I love your teaching style and sense of humo...

  • @soggy_dev
    @soggy_dev3 ай бұрын

    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 👍

  • @tristan4491
    @tristan44912 ай бұрын

    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

  • @malikmoinawan6942
    @malikmoinawan6942Ай бұрын

    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.

  • @cole.maxwell
    @cole.maxwell3 ай бұрын

    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

    @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.

  • @yosfodey2073
    @yosfodey20732 ай бұрын

    That was the best explanation of memory stack I have ever seen.

  • @bennwalton
    @bennwalton3 ай бұрын

    Great vid! I have always wondered why I can't add to an array, this makes it perfectly clear to me

  • @willlagergaming8089
    @willlagergaming80893 ай бұрын

    Your upload schedule is amazing. Keep up the good work.

  • @sharokhkeshawarz2122
    @sharokhkeshawarz21223 ай бұрын

    wow i got recommended this video and damn it makes it so easy to understand with animations man THANK YOU!

  • @christianpasch7305
    @christianpasch73053 ай бұрын

    Excellent work, pure content with simple description and impressive animation. You hit the point with every sentence. I'm looking forward to the "heap"

  • @alexandernanda2261
    @alexandernanda22613 ай бұрын

    Best low level content on this platform. No question

  • @tortellini_soup
    @tortellini_soupАй бұрын

    Great video! Liked after hearing the proper use of the word “datum” at 8:28. 😉

  • @user-vv9hf4yf1d
    @user-vv9hf4yf1d3 ай бұрын

    Your clear explanations and diagrams in video are very intuitive! I have comprehend a lot of things than my university experience.. appreciate that!!!

  • @orangeisbetter
    @orangeisbetter3 ай бұрын

    This is a very well-made video about stacks. Nicely done. 5 gold stars for you.

  • @loukafortin6225
    @loukafortin62252 ай бұрын

    You have earned my subscription, that was a better crash course than my SOEN classes

  • @manawa3832
    @manawa38323 ай бұрын

    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.

  • @dputra
    @dputra3 ай бұрын

    What a concise explanation accompanied by a very intuitive graphics! Kudos to you! Please continue delivering this kind of high quality videos 😊

  • @jawadtahmeed9854
    @jawadtahmeed98542 ай бұрын

    Your style of explaining is quite comfortable to follow and easy to understand. Keep making these videos. Already subbed !

  • @pizzainc.1465
    @pizzainc.14656 күн бұрын

    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.

  • @0xfrian
    @0xfrian3 ай бұрын

    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

    @hindustaniyodha9023

    3 ай бұрын

    If you want to work with embedded systems, I would suggest you take an overview of OS and COA.

  • @buildln
    @buildln3 ай бұрын

    Exceptionally Great explaination with examples. Keep teaching stuff like this.

  • @reidosreis4k
    @reidosreis4k3 ай бұрын

    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

  • @iamworstgamer
    @iamworstgamer2 ай бұрын

    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

  • @zklim
    @zklim3 ай бұрын

    This is amazing, looking forward to learn more about optimisation and security

  • @patrickc.6183
    @patrickc.61833 ай бұрын

    Great animations and concepts; brief, but thorough!

  • @pritonce6562
    @pritonce65622 ай бұрын

    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.

  • @sneaksneak6522
    @sneaksneak65223 ай бұрын

    This was a really cool well explained video. Please do more of these!

  • @theoryofimagination5214
    @theoryofimagination52143 ай бұрын

    awesome video, just like the last one. please do make a video about the heap and virtual memory. thank you, stay well

  • @jakubrembiasz8942
    @jakubrembiasz89423 ай бұрын

    Best video ever! Keep this awesome channel growing!

  • @banhminuongmuoiot
    @banhminuongmuoiot3 ай бұрын

    Thank u for sharing this much brilliant knowledge. I’ve learned a lot from this video. Appriciate it 🥰

  • @spacebuddy5339
    @spacebuddy53393 ай бұрын

    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!

  • @dipanshubhanot78
    @dipanshubhanot783 ай бұрын

    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

  • @kuleika01
    @kuleika012 ай бұрын

    Hi George, love your videos. Thanks for this good work!

  • @InMemoryOfNeo
    @InMemoryOfNeo3 ай бұрын

    waaaaaaauw!!!!! neighter in university nor in any other place nobody explains that how stack works and how processor cache works. you're awesome bro.

  • @himhimlo126
    @himhimlo1263 ай бұрын

    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~

  • @xE92vD
    @xE92vD3 ай бұрын

    This is great. Easy to understand and follow.

  • @nagoshi01
    @nagoshi013 ай бұрын

    Can't wait for the Heap video!! This was great

  • @LielAlmog
    @LielAlmogКүн бұрын

    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

  • @GospodinStanoje
    @GospodinStanoje3 ай бұрын

    Very eloquent and detailed explanation. I liked the animation too. Keep it up!

  • @its_Khoa
    @its_Khoa2 ай бұрын

    this is some phenomenal explaination, i think its even better than my uni courses, well done, looking forward for more videos from you

  • @jay_choi429
    @jay_choi4293 ай бұрын

    How much background work and knowledge does it take to explain it so neatly? It's pretty amazing.

  • @BlaBlaBlaInDaHouse
    @BlaBlaBlaInDaHouseАй бұрын

    Another amazing video, thank you for your time and effort!❤

  • @maheshkanojiya4858
    @maheshkanojiya48583 ай бұрын

    Superb video, thank you so much, love from India 🇮🇳🇮🇳🇮🇳

  • @wlcrutch
    @wlcrutch3 ай бұрын

    My new favorite channel. ❤

  • @Talel_kraiem
    @Talel_kraiem3 ай бұрын

    You boy this is dope as f# , please continue making videos it makes me excited for computer science

  • @cronos864
    @cronos864Ай бұрын

    Amazing video and the visuals were really on point. Thanks!

  • @dawid0115
    @dawid01153 ай бұрын

    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!

  • @tngdwn8350
    @tngdwn83503 ай бұрын

    Loved this video. Great explaination, high video quality and a wonderful illustration!

  • @ishi_nomi
    @ishi_nomi3 ай бұрын

    Great video! Really clear information and I like your humor lol

  • @zonn8954
    @zonn89543 ай бұрын

    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.

  • @AK-vx4dy
    @AK-vx4dy3 ай бұрын

    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.

  • @Diablokiller999
    @Diablokiller9992 ай бұрын

    Totally forgot that from my computer engineering class, as mindblown as in the auditorium back then :)

  • @jsaenzMusic
    @jsaenzMusic3 ай бұрын

    I'm so glad I found your channel! Slammed the "subscribe" button immediately! Thank you!

  • @tronikel1434
    @tronikel14343 ай бұрын

    Dude wtf this is so good, please dont stop doing this

  • @ghun131
    @ghun1313 ай бұрын

    This is very educational, the type of knowledge that I am not taught. Please do a video about the CPU

  • @myzel394
    @myzel3943 ай бұрын

    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

  • @long-live-linux
    @long-live-linux2 ай бұрын

    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.

  • @hamzarashid7579
    @hamzarashid75793 ай бұрын

    Great video. Love to see more!

  • @samaellovecraft
    @samaellovecraftАй бұрын

    Thanks for the knowledge!

  • @nathangwyn6098
    @nathangwyn60983 ай бұрын

    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. 🎉🎉🎉🎉🎉

  • @sametyldz1953
    @sametyldz1953Ай бұрын

    the best explanation i have ever listened

  • @XxYOURSxXxTRULYxX
    @XxYOURSxXxTRULYxX3 ай бұрын

    This is great I was struggling to understand stack vs heap

  • @pointer333
    @pointer3333 ай бұрын

    This is a fantastic video. Thank you! Subscribed!

  • @danielr3177
    @danielr31773 ай бұрын

    Keep it up man, i love the low level stuff

  • @tordjarv3802
    @tordjarv38023 ай бұрын

    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.

  • @pasinduvinsuka
    @pasinduvinsuka2 ай бұрын

    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

  • @tranquythuong
    @tranquythuong2 ай бұрын

    If my lecturer had taught computer architecture like this, i would have really loved this subject :3

  • @m___pryor
    @m___pryor3 ай бұрын

    Phenomenal video, wow, thank you!

  • @vadymstupakov2531
    @vadymstupakov25313 ай бұрын

    Although I know the topic, it's interesting to watch this video. I like visualisations. Thanks, waiting for heap!

  • @superkorki98
    @superkorki983 ай бұрын

    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

  • @felixfourcolor
    @felixfourcolor2 ай бұрын

    Came here to learn about the stack, ended up learning the meaning of StackOverflow's logo.

Келесі