Linus Torvalds - Just for Fun

Здесь есть возможность читать онлайн «Linus Torvalds - Just for Fun» весь текст электронной книги совершенно бесплатно (целиком полную версию без сокращений). В некоторых случаях можно слушать аудио, скачать через торрент в формате fb2 и присутствует краткое содержание. Город: NewYork, Год выпуска: 2001, ISBN: 2001, Издательство: HarperCollins Publishers, lnc., Жанр: Программирование, на английском языке. Описание произведения, (предисловие) а так же отзывы посетителей доступны на портале библиотеки ЛибКат.

Just for Fun: краткое содержание, описание и аннотация

Предлагаем к чтению аннотацию, описание, краткое содержание или предисловие (зависит от того, что написал сам автор книги «Just for Fun»). Если вы не нашли необходимую информацию о книге — напишите в комментариях, мы постараемся отыскать её.

Just for Fun: The Story of an Accidental Revolutionary is a humorous autobiography of Linus Torvalds, the creator of the Linux kernel, co-written with David Diamond. The book primarily theorizes the Law of Linus that all evolution contributed by humanity starts for survival, sustains socially and entertains at last. As well as this the book explains Torvalds' view of himself, the free software movement and the development of Linux.

Just for Fun — читать онлайн бесплатно полную книгу (весь текст) целиком

Ниже представлен текст книги, разбитый по страницам. Система сохранения места последней прочитанной страницы, позволяет с удобством читать онлайн бесплатно книгу «Just for Fun», без необходимости каждый раз заново искать на чём Вы остановились. Поставьте закладку, и сможете в любой момент перейти на страницу, на которой закончили чтение.

Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

It had 128 kilobytes of memory -- not megabytes -- which was huge at the time for a home machine. The VIC-20 it replaced had only 3 1/ 2kilobytes of memory. And because it was a 32-bit machine it could access all the memory with no problem at all, which was unheard of back then. That was the main reason I wanted to buy the computer. The technology was interesting and I loved the CPU.

I was hoping to get the computer at a discount by buying it at a store where a friend knew the owners. But it would have taken so long for the computer to arrive that I just shlogged down to Akademiska Bokhandeln, the largest bookstore in Helsinki, which had a computer section. I just bought it from them over the counter.

The computer cost nearly $2,000. There used to be this rule that entry-level computers were always $2,000. It's only in the last couple of years that this has changed. Now you can buy a new PC for $500. It's like cars. Nobody makes cars for under $10,000. At some point, it's not worth it anymore. Sure, companies can build a car that can be sold for $7,000, but the automakers reason that people who could afford $7,000 for a car are happier buying one for $10,000 that has extra stuff, like air conditioning, as standard equipment. If you compare entry-level cars this year with entry-level cars from fifteen years ago, they cost about the same. In fact, adjusted for inflation they might cost slightly less. But they're a lot better.

That's how it used to be with computers. When computers were not something that everybody bought, there was a pain threshold of around $2,000. If the lowest-cost computer is much more expensive, a company isn't going to be able to sell many of them. But they were expensive enough to manufacture that it didn't make sense for a company to make them much cheaper. People would always pay the extra $200 or so to get a better machine.

In the last two years they have become a lot less expensive to make. And even the low-end machines have gotten pretty good. Companies have lost many of the people who would pay the extra $200 for a slightly better machine. Since companies couldn't sell on features alone, they've had to sell on price.

I admit it: Back in 1987, one of the selling points of the QL was that it looked cool.

It was entirely matte black, with a black keyboard. It was fairly angular. This was not a rounded, pretty-boy machine. It tried to be kind of extreme. The keyboard was about an inch thick because it was pan of the same unit as the computer. That's the way most of the home computers were designed. On the right-hand side of the keyboard, where you would have a keypad, you had two slots for the revolutionary Sinclair microdrive, which was this endless loop of tape that was used only on a Sinclair machine. It acted and was organized like a disk drive. Because it was one long loop, you could just spin it until you hit what you wanted. It turned out to be a bad idea because it was not as reliable as a disk drive.

So I spent close to $2,000 for the Sinclair QL. Most of what I did with it was one programming project after another. I was always searching for something interesting to do. I had a Forth language interpreter and compiler, just to play around with. Forth was a strange language that nobody uses anymore. It was kind of a fun, niche-market language that was fairly widely used in the 1980s for different things, but it never became very popular, being difficult to follow for non-techie people. Actually it was kind of useless.

I wrote programming tools for myself. One of the first things I bought for the machine was an expansion bay with an EEPROM card (Electrically Erasable and Programmable Read Only Memory). It's memory you write yourself with special modules, and it stays around when you tum the power off. That way, I could have the tools easily available to me whenever I wanted, without having to load them into RAM (random access memory) and use precious RAM for programs.

What got me interested in operating systems: I bought a floppy controller so I wouldn't have to use the microdrives, but the driver that came with the floppy controller was bad so I ended up writing my own. In the process of writing that I found some bugs in the operating system -- or at least a discrepancy between what the documentation said the operating system would do and what it actually did. I found it because something I had written didn't work.

My code is always, um, perfect. So I knew it had to be something else, and I went in and disassembled the operating system.

You could buy books that contain partial listings of the operating system. That helps. You also need a disassembler, a tool that takes the machine language and turns it into assembly language. That's important because when you only have a machine language version, it's difficult to follow the instructions. You find that an instruction will jump to a numerical address, which makes it very hard to read. A good disassembler will make up names for the numbers and also allow you to specify names. It also can be used to help you identify particular instruction sequences. I had my own disassembler that I could use to create reasonably nice listings. When something didn't work, I could go in and tell it to find the listing from a particular spot, and I could see everything that the operating system was going to do. Sometimes I used the disassembler not because something was buggy but because I was trying to understand what it was supposed to do.

One of the things I hated about the QL was that it had a read-only operating system. You couldn't change things. It did have hooks -- places where you can insert your own code to take over certain functions -- but only at particular places. It's so much nicer to be able to replace your operating system completely. Doing an operating system in ROM (read-only memory) is a bad idea.

Despite what I've said about Finland being such a technology butt-kicker, the Sinclair QL wasn't making big inroads in Europe's seventh-largest nation. Because the market was so small, whenever you wanted to buy upgrades for the iconoclastic, leading-edge machine, you had to do it from England, via postal order. It involved scouring catalogues until you found someone who sold whatever it was you wanted. Then you had to get together certified checks and wait weeks for delivery (this being before the days of Amazon.com and credit cards). That's what I had to do when I wanted to expand my RAM from 128 kilobytes to 640 kilobytes. That was the drill when I bought a new assembler, to translate assembly language into machine code (the ones and zeros),and an editor, which is basically a word-processing program for programming.

Both the new assembler and editor worked fine, but they were on the microdrives and couldn't be put on the EEPROM. So I wrote my own editor and assembler and used them for all my programming. Both were written in assembly language, which is incredibly stupid by today's standards. It's complicated and time-consuming -- I'd guess it takes a hundred times longer to solve a problem in assembly language than in the C language, for example, which was available at the time.

I added a few commands to the basic interpreter that came with the machine so that when I wanted to edit something I basically just ran my editor automatically and it was instantly there. My editor was faster than the one that came with the machine. I was particularly proud of how fast I could write characters to the screen. Normally, with a machine like that, it would take so long to fill the screen with characters that you could see text scroll. And I was pleased with the fact that with my editor, you wrote text so fast that when you scrolled quickly down you created a blur. That was important to me. The improvement made the machine feel much snappier, and I knew that I had done a lot of work to make it operate so fast.

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Похожие книги на «Just for Fun»

Представляем Вашему вниманию похожие книги на «Just for Fun» списком для выбора. Мы отобрали схожую по названию и смыслу литературу в надежде предоставить читателям больше вариантов отыскать новые, интересные, ещё непрочитанные произведения.


Отзывы о книге «Just for Fun»

Обсуждение, отзывы о книге «Just for Fun» и просто собственные мнения читателей. Оставьте ваши комментарии, напишите, что Вы думаете о произведении, его смысле или главных героях. Укажите что конкретно понравилось, а что нет, и почему Вы так считаете.

x