Simply Put: What is a Stack?

Поділитися
Вставка
  • Опубліковано 30 вер 2024

КОМЕНТАРІ • 10

  • @jh5124
    @jh5124 2 місяці тому

    Yeah it helped a little bit. But if computers are random access why do you need to POP things off the stack to say to get to something or access something 3rd from the top? And where does the popped stuff go?

  • @BubblegumCrash332
    @BubblegumCrash332 3 роки тому +2

    Love your channel I'm always learning something new👍

    • @ZygalStudios
      @ZygalStudios  3 роки тому

      Thanks for sticking with me :) MUCH more to come!!

  • @torb-no
    @torb-no Рік тому

    I wish I had this video when I took OS and datacommunication at Uni. Very accessible explanation (and a nice refresher, it’s beena while).

  • @torb-no
    @torb-no Рік тому

    This made me curious: how does lexical scoping work with stacks? Do they just copy a pointer to the previous scope’s variables or something?

  • @trololp9724
    @trololp9724 3 роки тому

    Not like programming question, but just a curious to me. Why do in modern systems things below Ring 0, like Hypervisor, Intel ME, etc., exists? What is their purpose? Is there in embedded systems a same thing exists? Does inside SoC exist a module that works with privileges above any of its components?

    • @ZygalStudios
      @ZygalStudios  3 роки тому

      Their purpose is to primarily communicate with the hardware and manage the logic and resources along with it.
      This is done primarily for scalability purposes. So product lines can use similar software without much worry about having to reinvent the wheel to make the software again and Operating Systems can have the same system calls to these modules all while sandboxing off the actual hardware communications and management to abstract complexity and isolate potential vulnerabilities that may appear.
      In embedded systems, "privileges" don't exist. All the stuff you mentioned in your first question are almost exclusively Operating System features that virtualize hardware. In embedded systems, you'll have to write all of this from scratch. Unless you use some type of Operating system off the shelf that works with the microcontroller you are working with, or have a RTOS that has these features.
      Everything is bare metal, there are no handouts like this for the most part, because hardware is far too different to virtualize and designs goals are so different between projects that creating any kind of virtualizion is almost silly.
      Hope this helps! Feel free to reach out to me on Social media if you want more info!

    • @trololp9724
      @trololp9724 3 роки тому

      ​@@ZygalStudios Now it much clear for me. So code below Ring 0 is like "Driver for OS". Thank you for your explaining answer.

  • @Mittens0407
    @Mittens0407 3 роки тому

    64

  • @A31Chris
    @A31Chris 3 роки тому

    The Atari Jaguar initially couldn't run from main memory as you know. This must have severely limited the stack.