liam_on_linux: (Default)

From a Quora answer, because I like to keep my words outside of their walled garden.

The World Wide Web was originally developed on NeXT computers and the NeXTstep operating system and released around 1991.

This is the same year as the Linux project started, so the early 3rd party web browsers did not run on Linux; it barely existed yet. They ran on Windows and classic MacOS. (Mac OS X did not exist yet either.)

The most successful 2 were:

Both are proprietary code, available free of charge, but Netscape required a paid version for commercial use. Both are based on Mosaic from the NCSA.

Due in large part to illegal anti-competitive measures from Microsoft, for which it was found guilty in the US courts, Netscape went out of business. It was split up. Part (the browser) went to AOL, part (the web server) to Sun.

The unfinished next version of the browser, Communicator 5, was open-sourced as the Mozilla Project. However it took years to finish. The complete, working but proprietary Netscape 3 and 4 were not open-sourced.

Back to Linux.

The first complete FOSS Linux desktop environment was KDE. KDE had to re-implement a lot of technology that existed as proprietary code on Windows and classic MacOS. There was no Linux office suite yet — what would become OpenOffice and later LibreOffice was still a commercial, proprietary product, StarOffice.

KDE implemented a file manager (Konqueror), an office suite (KOffice), text editor (Kate), media players and much more.

KDE also implemented a web browser. This was integrated into the file manager, Konqueror. The KDE project wrote its own web-page rendering engine for this, called KHTML. This was the most complete FOSS browser engine after Mozilla’s Gecko engine.

When Apple bought NeXT and made the NeXTstep OS into the basis of the future Mac OS X, it needed a web browser. Mac OS X is built on a lot of FOSS code, much of it from the FreeBSD project. It did not include a web browser — FreeBSD uses Firefox (and others).

At first, Apple included Microsoft’s Internet Explorer. (This had prior history: older versions of classic MacOS bundled IE, Netscape, and Apple’s own, discontinued CyberDog browser.)

Apple decided that it needed its own, independent browser for Mac OS X. But writing a browser is a huge, complex task. So, it took the FOSS KHTML tool from KDE, and made that the basis of Safari, the new Apple web browser.

As KHTML is FOSS code, it needed to release its changes. It did this in the form of WebKit.

WebKit started out as KHTML, separated out from KDE and rewritten for OS X. Like KHTML before it, it was the leading FOSS browser engine. Apple did so much work on it that KDE re-adopted WebKit as the basis for its own browser, effectively replacing KHTML.

FOSS is cyclical like this: code is adopted from one project into another, improved, and sometimes goes back to its original creators in new form.

When Google also decided to do its own browser, Chrome, it used WebKit as the basis. Like WebKit and KHTML, Chrome is developed as an open-source project, called Chromium. This is mainly done by Google staff and is mainly paid for by Google.

So there are 2 branches of the Google browser: Chromium, which is FOSS, and Chrome, which is proprietary. Both are freeware.

Unfortunately, in English, the word for “at no price” is the same as the word for “at liberty”. The meanings are different, but both use the word “free”. In French, they are two different words: gratuit means no price, libre means at liberty.

Chromium is libre. Chrome is not. Both are gratuit. Software that is gratuit is often called “freeware”. “Freeware” is not the same as FOSS.

Google later forked the WebKit project. This means it took it in its own direction and stopped giving the changes back upstream to Apple. Google’s fork of WebKit is called Blink. Blink is the engine that powers the current versions of both Chromium and Chrome.

Microsoft has adopted Blink as the engine for future versions of Edge. This replaces its own in-house MSHTML engine, codenamed Trident.

So future Microsoft browsers will use the same engine as Chromium/Chrome, which is closely related to the WebKit engine used by Safari and KDE’s Konqueror.

This does not mean Microsoft is using Chrome, which is proprietary, or Chromium. Apple is not using Chromium/Chrome either, but the Blink engine is based on Apple’s WebKit.

liam_on_linux: (Default)
From a Quora answer.

Windows 10 is Windows NT version 10. Windows NT copied the patterns of MS-DOS, because DOS was the dominant OS when NT was launched in 1993.

DOS copies its disk assignment methods from Digital Research CP/M, because DOS started out as a copy of CP/M.
https://en.wikipedia.org/wiki/CP/M

What Microsoft bought was originally called QDOS, Quick and Dirty OS, from Seattle Computer Products.
https://en.wikipedia.org/wiki/Seattle_Computer_Products

The way IBM PC-compatibles assign disk drives is copied from the way the IBM PC running PC DOS assigned them. PC DOS is IBM’s brand of MS-DOS. See the answer about Apricot computers for how (some) non-IBM-compatible DOS computers assign drive letters.

The way that CP/M and MS-DOS originally assigned drive letters was simple.
The drive you booted from was the first, so it was called A. It doesn’t matter what kind of drive. But floppy drives were expensive and hard drives were very expensive, so in the late 1970s when this stuff was standardized, most machines only had a floppy drive or 2.

If you only had 1 drive, which was common, then the OS called it both A and B. This is so that you could copy files from one disk to another; otherwise there would be no way.

So, you copied from A: to a the virtual drive B: and the OS prompted you to swap disks as necessary.
Floppy drives got cheaper, and it became common to have 2. So, the one you booted from was A, and the second drive was B.

So far, so simple. If you were rich and added more floppy drives, you got A, B, C, D etc. and if you were lucky enough to have good firmware that let you boot from any of them, the one you booted off was A and the rest were simply enumerated.

It is common to read that "certain drive letters are reserved for floppies". This is wrong. Nothing was reserved for anything.

If you had a floppy and a hard disk, then if you booted off the floppy, the floppy drive was A and the hard disk was B. If you booted off the hard disk — and early hard disks were often not bootable — then the hard disk became A and the floppy became B.

You didn't need the virtual drive thing any more; to copy from one floppy to another, you copy from floppy to hard disk, then swap floppies, then copy back.

However, having drives change letter depending on which you booted from was confusing — again, see the Apricot comment — so later firmware started changing this. So, for instance, in the Amstrad PCW range, the last new CP/M computers made, Amstrad hard-wired the drive letters.
https://en.wikipedia.org/wiki/Amstrad_PCW

The first floppy was A. The second, if you had one, was B. And the rest of the machine's RAM aside from the 64 kB that CP/M used was made into a RAMdisk called drive M: "M" for Memory.

The IBM PC hard-wired some letters too. Floppy 1, A. Floppy 2, B, even if not there. Partition 1 on hard disk 1, C. Partition 1 on hard disk 2, D. Partitions 2+ on HD #1, E/F etc. Partitions 2+ on HD #2, G/H etc.

This was very common as up to and including MS-DOS 3.3, DOS only supported partitions of up to 32 MB. So, for instance, in 1989 I installed an IBM PS/2 Model 80 with a 330MB hard disk as a server running the DOS-based 3Com 3+Share NOS.
https://en.wikipedia.org/wiki/3%2BShare

It had hard disk partitions lettered C, D, E, F, G, H, I, J, K, L and M. (!)

DOS has a setting called LASTDRIVE. This tells it how many drive letters to reserve for assignment. Each takes some memory and you only had 640 kB to use, no matter how much was fitted. https://en.wikipedia.org/wiki/Conventional_memory

The default value for LASTDRIVE is E. Thus, the rival Novell Netware OS used the first drive after that as the "network drive" with the login command and so on: F.
https://en.wikipedia.org/wiki/NetWare

So, drive letters are not "reserved". They were originally assigned sequentially starting with the boot drive, and then by hardware ID number, and later by that and partition number, according to a slightly complex scheme that several people have linked to.

It is a convention that A was the first floppy and C was the first hard disk, and everything else was assigned at boot time.

July 2025

S M T W T F S
  1234 5
6789101112
13141516171819
20212223242526
2728293031  

Syndicate

RSS Atom

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Aug. 19th, 2025 11:33 pm
Powered by Dreamwidth Studios