Friday, May 24, 2013

 

OpenBSD on Dell GX110 Hits 1 Year Uptime

 
 Out of all the operating systems I've ever tried, I have to give a special nod of appreciation to OpenBSD 4.7. An hour ago it hit one full year of uptime. The hardware it's running on is nothing special, just an old Dell GX110 with a P3 cpu and 256 megs of ram. No mysterious slowdowns occurred and the system is still responsive. This marks the first time I've ever run a computer non-stop for over 1 year.


Here is a list of the longest uptimes I've personally had with various combinations of operating systems and hardware:
Longest Uptimes
---------------

dell gx110 openbsd 4.7  365 days
server tyan fc1         276 days
dell gx110 freebsd 8.1  169 days
toughbook cf-48 f10     165 days
hp nx9030 f16           127 days
zaurus sl-5500 embedix  120 days
acer 5534 f14            89 days
vector qdi p3            58 days
pcchips f10              35 days

FC1 refers to Fedora Core 1
F10 refers to Fedora 10
F14 refers to Fedora 14
F16 refers to Fedora 16



Tuesday, April 16, 2013

 

Operating System Features I'd Like to See


FOSS operating systems are great and I enjoy using and adapting them, but they are missing certain features which could make them even better.

One issue with FOSS operating systems is the plethora of package managers. Fedora even has two different package managers: apt-get and yum. Slackware has their own version of apt-get that they call slapt-get. The three BSDs use pkgsrc and the Sharp Zaurus used a similar package manager called ipkg. If you use KDE you are probably familiar with kpackage.

All these different package managers do take a bit of getting used to but it's the package names that are really confusing. One can't assume that the package names used by openbsd have the same names used by Fedora or Debian, or even if they have grouped programs together in the same fashion. One can't assume the every package used by Debian has a BSD counterpart and vice-versa.

But what I find most lacking in every package manager I've tried so far is that there is no way to see different categories of packages. There should be some way to list all text editors or browsers or games. Perhaps some package manager can do this but I haven't seen it yet. Another feature I'd like see is a suggestion feature based on the amount of ram available on the computer. For example, if your computer has 256 megs of ram or less it could suggest you to install dillo rather than the more voluminous firefox. Package managers could also tell you exactly how much hard drive storage space will be consumed before you actually install the package. (UPDATE: Fedora 14 does warn users when hard drive space is low.)

In general the resource management of computers could use a lot of improvement. It should be impossible for the user to lock up the computer by over-using it's resources but the truth is that it's easy to do (I'm looking at you firefox). It would be nice if one could tell the operating system not to let any individual program to use more than 50% of the available ram or at least have the operating system ensure that there is always a minimum amount of ram in reserve so the OS doesn't become unresponsive. Ditto for hard drive space, the OS should at least warn the user that the drive is becoming full and that some space should
be freed up.

Along the same lines any interactive program that becomes unresponsive should generate a warning message from the operating system to the user asking them if they would like the program killed. This process could even be automatic: e.g. the OS could kill any interactive program after zero response after a certain length of time.

Any operating system should be able to completely reset it's video driver. Assuming there is no hardware failure it should always be possible to reset the video card to a usable state without having to reboot the computer. My understanding is that this is not the case with current video drivers.

Labels:


Friday, January 4, 2013

 

Different Software Licenses


I use a bunch of different operating systems and they use different software licenses, and sometimes different parts of them use different licenses:

GPL licensed software: GNU/Linux
BSD licensed software: OpenBSD, FreeBSD
Motif licensed software: openmotif

Open Motif was released under a license allowing royalty-free distribution if the platform upon which it is used is Open Source. Openmotif first appeared in May 2000 as version 2.1.30

Motif itself is now licensed under the LGPL which bears some explanation which I will quote from wikipedia:

"The LGPL allows developers and companies to use and integrate LGPL software into their own (even proprietary) software without being required (by the terms of a strong copyleft) to release the source code of their own software-parts. Merely the LGPL software-parts need to be modifiable by end-users (via source code availability): therefore, in the case of proprietary software, the LGPL-parts are usually used in the form of a shared library."

Now to be clear, I prefer to release software under the GPL most of the time. I assume most people who read a blog like mine are familiar but just in case I'll include this link:

GPL

There are times where one might be inclined to use a different license,  e.g. the BSD license or even a license similar to the openmotif license. At least that's the theory since what I really did was release source code with no license mentioned at all, kind of an ad hoc free/open software release. So I'm going to mellow a bit and say if someone wants to use a different but still open/free type license then I'll accept that and not argue about it.

In the past it was a different situation again as I gave out copies of my various programs as binary only in the 1980s at no cost. Back then people didn't seem that interested in obtaining source code, at least not outside of academia but they were interested in using the software. This is still the case today as most computer users are non-programmers.

Now, to me the most important idea embedded in these different software licenses is that programmers and enthusiasts can obtain source code for educational purposes.  If one uses the source code of others it only seems fair to release any programs derived from free software as free software. This is the main purpose of the GPL and as I said before it's the license I'm most inclined to use.

Other important things include well written documentation for users and programmers. The elegance of a program is significant too, in that it performs the task it was  meant to do correctly and does so in a way which is well understood. It would be even more ideal if the software also used the minimium of system resources. Do one thing well, don't turn your program into the ultimate swiss army knife!

Leaving aside these details about what constitutes ideal software we can reflect on what advantages there are to free/open software:

 - Porting the code to a different platform
 - Fixing bugs, fixing spelling errors
 - Augmenting the documentation
 - Adding new features
 - Being able to use the program without having to worry about expiration dates or forced upgrades

I feel compelled to tell everybody about a certain software combination I've recently put on one machine:

 OpenBSD + X + Icewm + Dillo + Thunar + Leafpad + clipman + openmotif

OpenBSD is well compartmentalized. When you first install it you get the bare bones and nothing else. You must explicitly select the packages you want to install. As a result you end up with pretty much exactly what you want. I'm very pleased with the end result but allow me to explain why I'm so happy with these software components.

The target machine has only 256 megs of ram and a Pentium 3 cpu.

Icewm is a light weight window manager.
Dillo is a light weight web browser, released under GPL v3
Thunar is a light weight file manager, part of Xfce
Leafpad is a simple text editor, based on GTK+
clipman is a clipboard manager, also part of Xfce
openmotif is a toolkit for writing a GUI

The end result is a body of software that is very responsive, comes with all source code, and uses a minimum of resources. Note that these packages use different licenses but the end result is the user is happy, especially this user.

Tuesday, December 25, 2012

 

Language Distortion and Other Problems


The term "naked PC" is used by Microsoft Corporation to refer to a personal computer that is sold without any operating system preinstalled on the hard disk. The term was coined for its dramatic value and as a means for creating the impression that it is evil to sell computers without operating systems because they might be used for so-called software piracy (i.e., copying or using software in violation of its license).

This is due to the fact that the word naked implies both that something is missing and that it is inappropriate and/or immoral.

Microsoft's Bad Influence

Windows keys on almost all keyboards
Why would a non-Microsoft user want a keyboard with 2 windows keys?

The Bad Word-Association Game

Don't play the bad word assocation game. Remember when decribing a program to use a general abtract term (as shown on the left), not the name of a particular software package and especially not the name of a proprietary software product. A FOSS solution is mentioned for each example at the end of the line:

Software Presentation -> PowerPoint (Kpresenter)
Word Processor           -> Word (Abiword)
Spreadsheet                 -> Excel (Kspread, sc)
Internet Browser         -> Internet Explorer (Firefox, Lynx)

Limited Awareness

The limited awareness problem is fairly severe in North American schools and branches of government. To put things plainly we now have an entire generation of computer users who are unaware of alternatives to Microsoft products and thus only use Microsoft products. This is a regression of the knowledge level of the average computer user. We have a lack of conceptional learning and this is funnelling money away from people and giving it to a handful of proprietary software companies.

Another important idea is the realization that all software, no matter how complex, is written by someone. Some programmer or programmers had to sit down and write the source code and compile it. Any dedicated programmer who is unhappy with the software on the market can create a decent alternative to any proprietary program and this is starting to happen more often.

Many times programmers have said to me that they find existing programs to be bloated. One amusing example is to compare the size of IBM's VM/370 operating system for mainframes to current PC operating systems. A fully loaded VM/370 is about 126 megabytes in size. A recent Microsoft version of Windows requires an entire DVD and at least 16 gigabytes of hard drive space. At the other end of the scale Tiny Core Linux requires 128 megabytes of hard drive space (about the same as VM/370).

People realize that our current situation is bad. Many people intuitively know that dealing with a smaller independent company gives them better service and greater flexibility. There are small computer shops in my city that sell used computers and even new computers without an operating system. One guy even extols the virtues of PC-BSD.

All the problems that I've mentioned are all being dealt with one way or another. Where things have really become worse is in the mass media. CTV is a private Canadian broadcast television network that has become a mouth-piece for Microsoft. CTV has a part of the show called Web Mania which invariably talks about the latest Microsoft operating systems, and _never_ mentions alternatives. Microsoft doesn't need CTV beaking off about Windows 8, it really doesn't.


Saturday, November 17, 2012

 

History of the Internet in Canada

When discussing the history of the internet in Canada we must first look at the pre-internet era: A confusing time with many emerging technologies and incompatible network protocols.

In the early 1980s we had BBSes or Bulletin Board Services where individuals could run BBS software such as C-net, Opus and PCBoard (or even their own custom software) on a home computer. The computers were connected via modems using regular telephone lines, and users could log in one at a time. Some of the bigger BBSes could handle more than one user at a time but were generally a paid service, not free like most of the hobbyist services.

At around the same time there were experiments with Videotex, that is a service that sends data to and from a video terminal. In Canada Telidon was launched August 15, 1978. Telidon is a 2nd generation videotex service. 1st generation videotex services used blocks to do graphics (e.g. UK's Prestel) while Telidon could draw lines, rectangles and polygons and flood fill these shapes.

To do this Telidon used NAPLPS or the North American Presentation Level Protocol Syntax (pronounced nap-lips). Graphics were encoded as a series of instructions (graphics primitives) each represented by a single ASCII character.

To use the Telidon service one needed a suitable terminal with a cable tv connection. Electrohome, Norpak and Microtel all made terminals with a cost from $1,800 and $2,500. We can compare this to the initial price of a Commdore 64 or an XT Clone with peripherals.

Unfortunately Telidon died an early death on March 31st, 1985. The reasons for it's downfall include lack of advertising (no one will buy the service if they don't know about it) and the preference at the time to use home computers running software bought at computer stores. Another factor was the limited amount of data in the system. Users often terminated their subscriptions after a few months. To see what Telidon looked like here is a youtube video: Telidon

Bell Canada offered Alextel terminals to customers up until 1994 which also used NAPLPS. Alextel terminals used modems connected to regular telephone lines.

The Internet Era in Canada begins when Canada joins NSFNET, an international backbone of computing centres that enables more network connections. Early on the only way to get internet in Canada was via 3 regional networks ONet (Ontario Net) BCNet and RISQ (Quebec regional network). These networks connected to the American NSFNet. Up until 1989 you had to be part of an academic or research instituiton to access the internet in Canada.

After 1990 Free-nets start to appear, beginning with Ottawa Ontario and Victoria BC. This was followed by Toronto and Montreal and others. In 1992 Canada Remote Systems becomes CRS Online and could send emails to a Usenet Gateway which was available to the general public.

By 1994 each province and territory had a regional network and all connected together to form CA*net. CA*net eventually becomes CANARIE, the Canadian Network for the Advancement of Research, Industry and Education Headquartered in Ottawa, Ontario.

Around this time major US communication services such as Delphi and BIX offer full internet access wth local telephone numbers in major Canadian cities. Delphi was an ascii text based service.

In 1996 I joined the fledging Durham Internet Service (DIS) and created my first web page. Although DIS is now long defunct, my own web page still exists as cubeman.org

We are very fortunate in Canada to still have various Free-nets which operate as non-profit companies and can sell broadband services using DSL at wholesale prices.  They also provide a free dial-up service for local communities. One such service is Toronto Free-net which is my current ISP. Anyone who has a Bell telephone number in Ontario and Quebec can purchase broadband internet from them. One can find other Free-nets in Canada here.

I have a feeling that NAPLPS will be resurrected by someone in one form or another. The idea of having a information service running on a separate computer monitor seems very appealing, e.g. weather reports or stock market information. Given todays broadband and computer speeds such a system would seem almost instantaneous.


Thursday, September 20, 2012

 

Audio Blog Episode #13


Monday, August 6, 2012

 

Internet Pollution

This is just a short note about how Microsoft has polluted the internet and made streaming video for the Olympics impossible for Linux users. Linux folks were complaining about this back in 2008 and it's a problem again in 2012.

This is a problem because of Microsoft Silverlight which (naturally) does not work on Linux, even if you use the sorry Moonlight plugin for firefox. You can't stream the video for the Olympics without Silverlight. I'm not even going to bother linking to it, it's an utter waste of time and I would advise Linux users to steer clear of it.

If I can find any alternative methods to watch the Olympics on Linux I'll be sure to post about it here. Until then I'll just watch it on NBC and CTV.

This page is powered by Blogger. Isn't yours?

Subscribe to Posts [Atom]