Developer Tharun

Developer Tharun

By Tharun ShivTechnology
Download on the App Store

Developer Tharun episodes

  • Server virtualization for roadrunners | Hypervisor
    Introducing Virtualization

    I know the article made you hungry, let’s get back to the topic.

    You need to know two basic things:

    1. Host machine: Imagine a huge machine on which multiple other smaller machines will be created
    2. Guest  machine: The multiple smaller machines that are created on top of the  huge machine, that uses the resources provided by the huge machine is a  guest machine.
    3. Virtualization  creates a software representation of the underlying hardware resources  on a host and shares it among the virtual machines that are created on  top of it. Each virtual machine has its own operating system and  applications, thereby being able to utilize the resources of a host  machine by its guest machines in an isolated manner.

      A  virtual machine ( VM ) is an isolated guest machine that has it’s own  operating system and applications. Each VM is completely independent of  other VMs running on the same host machine.

      If you remember our x84 vs x64 architecture systems blog post,  the x84 systems are not capable of running more than one operating  system or application at a time. The concept of multi-processing came up  only with the x64 systems introducing the dual-core, quad-core so on.  Because of this reason, the earlier datacenters which were based on x84  systems had to increase the number of servers, whereas the server  utilization remained underutilized.

      Today,  this is not the scenario. Virtualization has gone beyond just server  virtualization and has reached network virtualization, disk  virtualization, and so on. But how is this possible?

      Hypervisor — The hero of our story

      The  concept of Virtual Machines is made possible only because of the thin  layer of software known as the Hypervisor, which is installed on the  host machine. The hypervisor enables the virtualization of resources and  isolation between the Virtual machines that are created on the same  host. This enables efficient and transparent utilization of data center  resources.

      Types of Hypervisors:
      1. Type one hypervisors ( Bare-metal hypervisors )
      2. Type two hypervisors ( Hosted hypervisors )
      3. Type one hypervisors

        Type  1 hypervisors as depicted above lay directly above the physical server  and host the virtual machines on top of them. They are also known as  bare-metal hypervisors. It has shown far better performance than type  two hypervisors.

        Dynamic  resource allocation in Type 1 hypervisor allows VMs to consume  resources only as much as they need to be fully functional, even if you  allocate more than that. For example, if you allocate 32GB of RAM to a  VM, it will not reserve all 32GB of RAM to the VM, but only that  resource which it needs to fully function. ( This is not the case with  Type 2 hypervisors ).

        Example: The open-source KVM ( Kernel-based Virtual Machine )

        Type two hypervisors

        Type 2 hypervisors as depicted above have an operating system on top of  the physical server layer, over which a type two hypervisor is  installed. So, there is a host operating system ( a software layer )  that comes in between the physical server and the type two hypervisor.



        12 min
      4. x86 vs x64 systems for roadrunners | Developer Tharun
        x86 Systems

        x86 is a generic name that is used to refer to all Intel processors that were released after the original 8086 or 8088 variant of Intel processors.  The variants like 80286, 80386, 80486 so on.. were named using the  convention x86, where the 80 is implicit, and x can be replaced with a  number conveniently. These are backward compatible systems.

        8086 or 8088 are the various names that are used to Identify the microprocessors of Intel that were released in the 1970s.
        Registers used in the early x86 systems
        A  Register is a tiny memory holding electronic device that is used by the  processor to either store instructions, data or address. These are  fundamental units that are used when executing a computer instruction to  perform a task.

        x86 systems ranged from 8-bit, 16-bit and then 32bit. What do these bits refer to? They are the highest number of bits in a single register that exists in the system.

        Maximum memory limit

        When  we say 32-bit, the number will contain 32 digits with each of them  being either 0 or 1. The number system used here is Binary System (  power 2 ). Hence, the maximum possible value here will be 2³², which is  42,94,967,295. These are the maximum number of memory locations that a  32-bit register can access. We can only attach that memory device which  the register can completely make use of.

        Thus, a 32-bit register can cater a maximum of 4GB of RAM.  This is because, if each memory location that the register points to  can hold 1 byte of data, then 42,94,967,295 bytes = 4.29 G. Although  this is theoretical, the actual RAM that can be used will be less than  around 3.5G, because of certain parts of the register being used to  store other types of data.

        x64 Systems

        For the systems that evolved to use 64-bit registers,  they initially named it x86–64, but since this sounds longer, the  naming was changed to x64 systems. x64 is a generic name that is used to  refer to all Intel processors that are 64-bit processors.

        The x64 systems as mentioned above contains registers that are even capable of storing 64bits in a single register.

        Theoretical Maximum memory limit

        When  we say 64-bit, the number will contain 64 digits with each of them  being either 0 or 1. The number system used here will be Binary system  just like the 32-bit family. Hence, the maximum possible value here will  be 2⁶⁴.

        Thus each 64-bit register can cater a maximum of around 18 Quintillion bytes of memory. ( One Quintillion is 10¹⁸ ). Therefore it will be able to handle the  usual RAM that we come across everyday effortlessly, including  enterprise production servers.

        Processing power of x64 systems

        x64 systems come with configurations like dual core, quad core, octa core and so on, which depicts the number of processors that work  simultaneously in an integrated circuit. This enables the Operating  system to perform tasks parallely. While dual-core has two cores than  one single core, every task that it does need not be twice as fast as a  single core machine. This is because, even the operating systems and  programs that is using the processors should be able to perform  parallely using multi processors.

        Roadrunners  is a series that is aimed at delivering concepts as precise as  possible. Here, a roadrunner is referred to a person who does things  super fast & efficient. Are you a roadrunner?

        https://medium.com/@tharunshiv/x86-vs-x64-systems-for-roadrunners-18de2d488020

        7 min
      5. Ep. 5 : App Development Guide • How to make the most out of Engineering? | Developer Tharun Shiv

        Thank you so much for tuning into this podcast, in this episode, we discuss about the App Development.

        • What is App Development?
        • Different types of app development
        • Comparing Java, Kotlin, React Native, Flutter
        • When to use what?
        • What should you do after studying?
        • How to become a pro in app dev?
        • In this  series I talk about the the fields that you can explore as a  computer  science engineer. we talk about web development, app  development, system  administration, data science, artificial  intelligence, machine learning  deep learning, blockchain. We will be  diving deeper into each one of  these topics in the upcoming podcasts.  You are listening to the third  episode of how to make the most out of  your engineering hope you like  it, thank you.

          20 min
        • Ep. 4 : Webdev Backend & Database • How to make the most out of Engineering? | Developer Tharun Shiv

          Thank  you so much for tuning into this podcast, in this episode, we discuss about the webdev backend part.

          • What is backend?
          • The programming languages that you can use for backend
          • The libraries and frameworks of JavaScript that you can use for backend development
          • What is a Database? What are the 4 main operations called CRUD that you need to know?
          • What are REST APIs and example to understand them
          • About Authentication
          • In this  series I talk about the the fields that you can explore as a computer  science engineer. we talk about web development, app development, system  administration, data science, artificial intelligence, machine learning  deep learning, blockchain. We will be diving deeper into each one of  these topics in the upcoming podcasts. You are listening to the third  episode of how to make the most out of your engineering hope you like  it, thank you.

            10 min
          • Ep. 3 : Webdev Frontend • How to make the most out of Engineering? | Developer Tharun Shiv

            Thank you so much for tuning into this podcast, in this episode, In this series I talk about the the fields that you can explore as a computer science engineer. we talk about web development, app development, system administration, data science, artificial intelligence, machine learning deep learning, blockchain. We will be diving deeper into each one of these topics in the upcoming podcasts. You are listening to the third episode of how to make the most out of your engineering hope you like it, thank you.

            13 min
          • Ep. 2 : Be an Explorer • How to make the most out of Engineering? | Developer Tharun Shiv
            Thank you so much for tuning into this podcast, in this episode, I talked about the the fields that you can explore as a computer science engineer. we talk about web development, app development, system administration, data science, artificial intelligence, machine learning deep learning, blockchain. We will be diving deeper into each one of these topics in the upcoming podcasts. You are listening to the second episode of how to make the most out of your engineering hope you like it, thank you.
            14 min
          • Ep. 1 : How much to Study • How to make the most out of Engineering? | Developer Tharun Shiv
            In this episode I talked about how much each one needs to study during their college. To become successful out of college doesn't mean that you will have to study everything and spend all day studying. based on your future goals you will have to tune the time that you put into studying college stuff. The earlier you realise this the better it is for your future. So in this podcast developer Tharun talks about his own experience at college. Welcome to the series of how to make the most out of engineering, each one of this episode we will be looking at each of the aspects that you need to know and improve at college. every minute is precious with that being said four years of college should not be wasted. Thank you so much for listening to the podcast this is Tharun I hope you enjoy episode.
            12 min
          • How did I start Programming? | About Me | My Journey until here - Developer Tharun - Ep. 20
            Hey there! Please Follow this podcast!
            This is Tharun. In the Developer Tharun Podcast, I talk about programming, web development and related fields.
            Thank you for Listening
            In this Episode
            How did I start Web development?
            My Journey until here
            Who am I?
            How did I start content creation?
            And more...
            Thank you for listening to my Podcast. Follow my podcast if you find it helpful. Check out my other episodes. I talk abour programming, web development, data science and other experiences of mine with programming.
            YouTube: https://youtube.com/c/developerTharun
            Blog Article on: https://tharunshiv.com
            Instagram: @developerTharun
            Dev.to: https://dev.to/developertharun
            Udemy: https://www.udemy.com/user/tharun-shiv/
            LinkedIn: https://linkedin.com/in/tharunshiv
            8 min

          About Developer Tharun

          From the publisher's feed

          A one-stop podcast destination to know about Programming and how to excel in it! I will be sharing about Programming, Web development, freelancing and mainly my experience on it. Make sure to Subscribe to the podcast on Spotify/Google Podcasts or on any platform you're listening to.