this post was submitted on 12 Jul 2023
19 points (100.0% liked)

Programming

13384 readers
1 users here now

All things programming and coding related. Subcommunity of Technology.


This community's icon was made by Aaron Schneider, under the CC-BY-NC-SA 4.0 license.

founded 2 years ago
MODERATORS
 

Websites, mobile apps, desktop apps and mobile OSes are developed and updated using the desktop OSes, which I would call the 'master OS'. But who updates the 'master'? How do the devs upgrade Windows 10 to Windows 11 using Windows 10?

I have some experience in computing but software development for operating systems is completely mysterious for me. I have had this question ever since I learned about software development in general.

I saw Apple say how they use the Macs to build all of their other products and softwares, but they never answer how they build macOS itself. I understand how these companies could design an upgraded or a brand new computer by designing its new architecture as well as the circuitry and the components underneath with the help of a program like CAD. What I don't understand is how they upgrade their existing software they themselves work in, especially when it has completely new features the old one doesn't have. I feel like this is similar to a person performing a brain surgery on himself.

I would really appreciate if someone could ELI5 but only dumb it down enough for a person that understands how to really work with computers and knows the general theory of programming , like an amateur or the family IT guy.

you are viewing a single comment's thread
view the rest of the comments
[–] peter@feddit.uk 5 points 1 year ago

One thing that nobody else is touching on which I think is part of what you're asking is that it differs from brain surgery in that they don't need to work on the "live" version of the operating system that they are using to develop on. They might have another or multiple other computers that they install their in-development versions of the OS on, or use virtual machines (which is where a virtual computer is created inside of another computer running a completely different OS) to test their changes. Operating systems are also very large and made up of specific components, a single person might be working only on a very specific part of the OS at one time which they can swap into an existing version of the OS in order to test it, rather than having to have a half finished windows 11 on their PC.