I don’t understand why Google didn’t just made Android closed source. They would’ve made custom roms impossible and therefore more able to control and spy on it’s users. Why did Google made Android open source, while Microsoft’s Windows is still closed source to this day?
For one, the GPL prevents them from closing the Kernel. Google didn’t intially write it.
let’s say google didn’t care and closed their software anyways. who would have sued them? and how would they find about it, since the source code is not public?
There’s a lot of money wrapped up in the Linux ecosystem. They would be no shortage of people to sue them. It would also be pretty hard to hide that your operating system is secretly Linux. The operating system image can be pulled off the phone and inspected. It would be a massive effort and probably futile to obscure. On top of that, Google has a lot of employees and someone would whistle blow. They would have to really go draconian locking things down.
You can’t take an open source project closed source, not easily. They are usually published under a license that makes sure they stay open source.
Google didn’t create android, they bought out its creator. That didn’t mean they got to own the code. Plus it’s built on top of, and still runs, the linux kernel, which is also open source.
It’s the same for chrome, chromium is open source to this day, but that’s also one of the reasons why it’s so wide-spread. Anyone can use the code, so they do. But google didn’t make it, it existed before their involvement.
In a nutshell Android uses Linux as it’s base so I don’t believe they could make it closed source, where Microsoft Windows, like Apple MacOS, have always used their “own” kernel allowing them the flexibility to keep their software closed source or source available.
Kernel is irrelevant. By the way, MacOS kernel is open source and is derived from one of BSDs.
MacOS is derived from Darwin but heavily modified and now closed source. While GPL is copy left, BSD has no such requirement so you can effectively make your derivative OS closed source, which NeXT and subsequently Apple did.
Yes, Darwin got closed, but it was open for a very long time. Yet MacOS remained closed and proprietary. Again - kernel and its licence doesn’t matter.
Android doesn’t have to be open-source. Just because it uses the Linux kernel doesn’t mean the rest of the OS has to be open-source.
Android is open-source because Google wanted it to be. They wanted to monetize it differently, not by charging money for the OS.
Doesn’t this contradict GPL? Since Android was built on top of the Linux kernel.
No. The GPL for Linux applies to the Linux kernel.
GPL only says that one particular program has to stay open. It doesn’t say that everything else on the same computer has to be GPL.
Most Linux distros include software with a wide variety of licensed. Many people run commercial software on top of Linux.
Open source encourages contributions so that it grows beyond the initial start: https://en.m.wikipedia.org/wiki/Open_source
Also, I remember when Android came out and needed to find its place among all of the custom operating systems. Making it open source so that everyone (including other manufacturers) could make it their own was a huge selling point.
The first thing that’d come to my mind is free labor. Everyone can contribute to open source projects.
Google is still basically a company that sells ads. They’re not going to sell more ads by being more exclusive.
Keeping it “open” makes it much easier to find partners willing to make phones with it, increasing market share. That was probably the only way to catch up with Apple.
I put “open” in quotes because large parts are actually closed source and more and more of the open source parts are being deprecated in favor of new closed source replacements like this: https://linustechtips.com/topic/1516202-google-sabotages-open-source-android-and-custom-roms-by-deprecating-open-source-built-in-dialer-and-messaging-apps/
Ahh this is probably one of the most interesting answers I’ve received.
Pretty much everything is based on open source these days. Apple’s macOS and iOS are BSD, which, unlike Linux’s GPL, allows them to not provide the source for changes.
Everything else then runs Linux, so it was a natural choice for Android, as it’s more lightweight than Unix like BSD, and better suited for mobile and low-power devices.
Windows is a bit of an oddball. First off, a lot of its code and philosophy is taken from elsewhere. The original DOS was bought for peanuts under a ruse. A lot of original Windows came from Apple’s OS (which was originally stolen by Apple from Xerox) of the time that MS had access to due to making Office for Mac.
Then for the NT family (which includes everything up to W10), Microsoft stole a lot of code from IBM and their OS/2, when they collaborated. And some other stuff from BSD, without telling anybody. Which is why the NT line managed to stay relatively good for so long.
Basically Windows is a hodge-podge of other systems, which MS has managed to push thanks to their predatory business practices and eventual monopoly. It’s been like that forever.
If there’s any good MS product on desktop, it’s bought or stolen from somewhere else. If it’s shit, it’s their own.
Windows 11 is also descended from NT isn’t it? Or is it considered too different now?
I guess so, but I’m not familiar with it so I didn’t count it.
The GPL. Linux (which Android uses) is licensed under the GPL license, which protects the libre/open source project and stops it from being turned closed source by someone else. Other parts of Android are the same.
Well, Windows isn’t that popular in the computer scene. Linux is by far more popular for servers, IoT devices (payment terminals, heartrate monitors…) and critical systems. But Windows has an edge in the PC scene. But to be honest a Apple Mac is also in the formfactor PC. These charts are always way of, just because their definition and monitoring techniques are not trustworthy.
The problem with Linux: it is opensource and free, and everyone can rebrand it. But at the same time everyone wants to make a euro out of it. There are a lot of companies that misuse its license by closing the source.
Google can’t make android itself closed source, because they didn’t create it. However, they’ve made all the Google Mobile Services closed source. Without GMS, you wouldn’t have the standard android experience.
https://www.androidauthority.com/google-mobile-services-gms-3025963/
This is extremely subjective. Windows has a far smaller total market share in total devices. Its perceived dominance is an illusion. Windows is designed to monetize software to exploit the end user. There is a ton of effort that goes into keeping people in a little echo chamber surrounding Windows, but it is mostly a facade.
Android is another sketchy thing. Many parts of it are open source but many are not. All of the google framework and apps are proprietary. Google also undermines the Linux kernel to provide a stripped down version that hardware manufacturers can add their proprietary code into at the last possible moment. This lets them manipulate the end user by depreciating the devices whenever they want because the code needed to support the devices is not submitted into the mainline kernel. No one updates or maintains the kernel running on these devices and this is why they become obsolete.
The only reason proprietary software or hardware exists is to steal ownership from the end user. There is no other reason whatsoever. Everything proprietary is criminal exploitation and theft of ownership.
It’s not really correct. Mobile hardware was never open like x86 hardware and it always requires proprietary code to work. Even if you take something completely open source like Raspberry Pi, it’s still using a proprietary bootloader which controls hardware features. And it doesn’t matter what OS is running on top, because such bootloader exists outside of OS.
And if you dig deeper, you’ll quickly learn that pretty much all non x86 and non PC hardware is locked. With the exception of the most primitive chips with limited features
I appreciate the reply. The complete datasheet for the Raspberry Pi is NDA locked. There is no documentation available for the majority of the die. As a simple high level reference the YT channel Electron Update and his respective blog have images of the decapped die where you will see the majority of it is dedicated to its original application as a TV tuner box. There is a partial datasheet for things like serial peripherals, but the registers level hardware outside of the ARM core are undocumented.
X86 has been mostly open up until the end of the Core Duo era. This is how Libreboot exists, but I believe Leah still had to reverse engineer the first generation intel management engine API (“Vpro” or whatever they called it). Indeed I have 2 machines running completely open source. One is on Gentoo and has complied itself from scratch including its bootloader, as a project a few years ago. True, the architecture for x86 has evolved, and to my knowledge, is undocumented in its entirety, especially stuff like the ALU configuration. We are on the precipice of RISC-V. The first server class machines running exclusively on RISC-V already exist in the wild. This will eventually make both x86 and ARM obsolete. By open sourcing the instruction set architecture, the dominance of exploitation in our current era will fade into proprietary blocks on the edges of the die and these should be easier to isolate or reverse engineer at the community level.
The x86 bootloader is indeed a major current issue, but just 2 weeks ago AMD released the OpenSIL project which is the open source release of the full initialization API for their current hardware. This release is the death knell for proprietary bootloaders. If Intel does not respond in kind very soon, it will be completely irrelevant in the server and professional space. There is no other way to address the open CVE’s for the Intel Management Engine. Within the next decade, proprietary hardware will look like the medieval era of feudalism as much as a Nokia 3310 looks prehistoric to our current devices.
That’s a nice dream, but it’s just that - your dream. Even RISC-V runs on existing ARM cores. Unless you have a few spare billions to build competitive fab, nothing will change.
Android, Windows and macos all have different ways to make money.
Windows: sell windows as a product. Mac: sell hardware Android: use Google services too gain data and sell ads. Try to make the os as widly spread as possible.
I remember too that google had to pivot HARD and FAST! They got blindsided by iOS and the initial iPhone. There’s a video of the original google phone OS that was a project in development and I remember people getting excited about. But then the iPhone was released, and google had to quickly pivot to a whole new paradigm for touch screen and virtual keyboards. My guess is it was an initial exploration project that they just had to lean into hard and did t have time to convert to proprietary implementations or they were just using what was readily available. It really is a wonder that androind was able to compete with iOS so quickly.
It really is a wonder that androind was able to compete with iOS so quickly.
Probably it’s only due to people like me that refuse to be extorted by Apple Inc. Instead I’m extorted by Google, but at least it’s not Apple.
Even though Android has lots of open source code in it, many core components are actually proprietary. Just look at the state of Replicant, and you’ll see how much can actually be done with just the FOSS parts. It’s not really daily driver material just yet.