Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ BeOS Tour

Media Vault

Software Library

Restoration Projects

Artifacts Sought

BeOS Tour

    [Cube] [Bar]

power by design,
power for design


A Tour of the Be Operating System
BeOS Release 3

This tour is for those new to the BeOS who want an overview of the capabilities of the system. While there is no replacement for experiencing the performance and interactivity of the BeOS live, in this virtual BeOS demo we will try to give you a feel for the power of the BeOS.


BeOS Tour Guide

Modern Foundations

  • Multiprocessor (MP)
  • Multithreaded
  • Protected memory

User Services

  • TrackBar & Tracker
  • Desktop icons & soft-links/aliases
  • MIME type support

Inter-Application services

  • Messaging
  • Replicator Technology
  • Database services

Internet enabled

  • TCP/IP enabled
  • Internet communication (PPP, TelNet, FTP)
  • Web browsing & email

Integrated Media

  • Digital audio
  • MIDI
  • 3D & OpenGL

Compatible

  • POSIX/UNIX compatibility
  • Mac HFS support
  • PostScript & PCL printing
  • Anti-aliased TrueType fonts
  • Unicode support


Modern Foundation

Multi-media professionals require real-time performance, system stability and media integration. The BeOS has been written from the ground up to meet those needs. The BeOS is the first truly modern OS -- designed without the 10-15 years of legacy code seen in other operating systems. The clean and modern foundation of the BeOS enables the system to be small, responsive, stable and easy to program. One Be developer describes the BeOS as "low-friction" because the OS doesn't have the layers and layers of code that make applications huge and slow.

In this tour we will only visit three of the important modern foundations of the Be Operating System -- multithreading, multiprocessor, and protected memory. See the Media OS whitepaper for additional details on BeOS foundation capabilities.

Multiprocessor (MP)

Most personal computers have been designed for a single microprocessor. If you have a computer with the fastest available processor and still need higher performance, you are stuck. The BeOS enables an exciting high performance alternative -- personal computers with more than one processor. The BeOS currently runs on one, two and four processor systems. The operating system itself has no limit on the number of processors in the system so as new hardware becomes available, the BeOS automatically takes advantage of the additional horsepower.

The CPU monitor is an application that comes with the BeOS that graphically displays the number of processors in the computer (in this case 4), their type and speed, and the amount of work they are doing at the time. The CPU monitor even allows you to turn processors on and off. Not only will the computer not crash, but the work will be dynamically re-allocated to the processors that are available.

Multithreaded

A multiprocessor computer will not perform as expected unless both applications and the operating system take advantage of that capability. The key to exploiting a multiprocessor system is pervasive multithreading, which is the process of breaking down a task into sub-tasks that can operate in parallel. In a multithreaded multiprocessor system, threads can be performed in parallel and can actually be executed on separate processors, thereby dramatically increasing performance.

Unlike other "multiprocessor capable" operating systems, the BeOS is heavily multithreaded throughout both the programming model and the operating system. It is virtually impossible to create a single threaded BeOS application because the system provides threads automatically.

The graphic above demonstrates BeOS both multitasking and multithreading -- files are being copied and deleted at the same time as the Benoit Mandelbrot application is drawing.

Mandelbrot provides an excellent example of application threading in the BeOS. The application has six threads but only two are handled by the programmer. The system provides two threads to handle drawing the window and two to handle the menu items. The author uses two threads to actually calculate and draw every other line of the contents of the window. The multithreaded design of the BeOS and the application result in performance that is twice as fast on a dual-processor computer as it is on a single processor machine.

The overall performance the user experiences also depends on the threading within the operating system itself. Underlying components of the BeOS are extremely multithreaded to enable tasks to run simultaneously. The BeZAP application shows that there are over 80 threads on this BeOS system that only has four applications running.

Protected Memory

An operating system with protected memory is one where each application has its own memory space. If one application crashes, it doesn't corrupt other applications nor the underlying system. You can simply re-launch the offending application rather than having to reboot the entire system. In the BeZAP screen shot above each application, as well as elements of the operating system, is operating in its own memory space.


Powerful User Services

The user interface of the BeOS leverages existing user interface paradigms and improves upon them. This allows you to leverage what you already know about using a computer, and get right to work in the BeOS.

Tracker & TrackBar

The Tracker provides a user interface for working with files. It is analogous to the Mac OS Finder or the Windows Program Manager.

TrackBar, shown on the top left of the BeOS desktop above, has several uses. It offers:

  • access to the windows of currently running applications and their windows.
  • the ability to perform finds -- an easy to use interface to the powerful system-wide query mechanism.
  • direct access to most often used applications and documents.
  • navigation of the entire directory structure of the computer.
  • the ability to show/hide draggers for Replicants...and more.

The TrackBar can be repositioned vertically and attached to any corner of the screen, or horizontally at the top or bottom of the screen (and can be repositioned on the fly.)

Desktop Icons & Soft Links

The BeOS allows users to flexibly organize their data and applications. With support for desktop icons, users can have favorite files or applications right on the desktop for easy access.

The system also supports soft links (similar to aliases in the Mac OS, or shortcuts in Windows 95), which enable users to have multiple virtual copies of a file or application all linked back to one source.

MIME Type Support

The Tracker uses the Internet standard MIME types to support associating applications with the documents they create. The MIME type facility in the BeOS allows users to just double-click documents to open the associated application as well as to change the association to another application. For example you could reassign a GIF document created with an image editor to a Web browser so each time you double-click the document, the Web browser is launched to display the GIF rather than the image editor.


Inter-Application Services

Inter-Application Services are a suite of interfaces and tools enabling the BeOS and BeOS applications to be more powerful, yet smaller and better integrated.

Messaging

The BeOS has one simple and standard way for one entity to communicate with any other entity in the system. Cut&Paste, Drag&Drop, scripting, inter-application communication, and Be's Replicator technology are all handled with the same mechanism -- called a BMessage. This unification dramatically simplifies programming the BeOS.

One example of messaging is demonstrated by the BeBounce application. It is a simple demo that bounces a red ball in a small box. When two copies of the application are launched messages are sent in real time between the two applications. These messages cause each window to create an opening based on their position relative to each other. The Be messaging mechanism is used for the applications to communicate their position and the trajectory of the ball so it can bounce out of an opening in one window and into the other.

Replicator Technology

The BeOS has a powerful and elegantly simple component software technology called Replicator technology. Replicator technology allows objects of one application to be shared and run within another application -- code and all.

The Shelf demonstration application illustrates how you can Replicate objects from one application (in this case the face from the clock and the on/off buttons from the CPU Monitor) and have them contained in another application. The face and the on/off buttons are not simply graphics but running portions of those applications.

With Replicator technology, you can Replicate the window from your Web browser and have it display on your desktop (which is just one huge container application) and it will be active and updated just as if you were running the browser itself.

File System Queries

The BeOS includes file system-level query capabilities. Every BeOS file or directory can have attributes which can be indexed and quickly searched. Applications can utilize this system capability rather than having to write their own light-weight database functions.

A simple third party e-mail application called MailIt uses file queries extensively to track e-mail messages and addresses. Rather than having to implement all of this functionality himself, the author utilized BeOS system services, resulting in a smaller and simpler application.


Internet Enabled

The Internet is a critical enabling technology for Be so we have included many basic Internet capabilities with the BeOS.

TCP/IP Ethernet

TCP/IP and Ethernet are the network standards of both the Internet and the BeOS. The BeOS supports many systems' on-board Ethernet as well as a number of popular Ethernet cards. The Network Preference application, shown below, allows the concurrent use of multiple Ethernet cards with multiple IP addresses. All settings are reconfigurable without restarting the machine.

Internet Communication

The Network Preference application allows the configuration of PPP, Telnet and FTP functionality:

  • PPP (Point to Point Protocol) enables you to connect to the Internet with an external modem.
  • Telnet allows you to connect to and interact with your BeOS system from a remote location via a command line interface.
  • FTP allows you to upload and download files to and from your BeOS system via FTP (File Transfer Protocol).

Web and E-mail

Because Internet communication is central to the BeOS we include a basic Web browser (NetPositive) and e-mail application (BeMail). A variety of third party developers are providing even more functional applications, so users can upgrade if they need more capabilities.


Integrated Media

Native realtime support and the ability to work with and integrate popular media types is critical for a "Media OS." The BeOS offers realtime thread priorities to support realtime applications such as audio and video. The operating system also includes a modular data services library, the Translation Kit, that provides a standard way for applications to read, write, translate, and manipulate any file format that has a module.

Currently, developers have written add-ons that support a wide variety of graphics, video, sound, 3D, etc. formats, and more are coming every week. With BeOS messaging and Replicator technology, we expect to see applications that give new meaning to the term multimedia.

Digital Audio

The realtime audio capabilities of the BeOS are extensive. Because all sound is routed through the BeOS as a digital audio stream, developers are using the audio capabilities in the BeOS to apply filters and special effects to an audio stream, such as a CD being played from a CD-ROM drive, in realtime.

MIDI

MIDI -- Musical Instrument Digital Interface -- is another digital audio format that is a higher level description of music than digital audio. MIDI includes information about notes, tempo, instruments, etc. The BeOS includes a basic software MIDI synthesizer so you can start experimenting with MIDI right away.

The application shown above plays the MIDI file, displays a graphic representation of the audio stream, and allows the realtime manipulation of the audio output through reverb filters (the pop-up menu showing "Igor's Lab").

3D

The BeOS is an excellent platform for 3D applications. The BeOS supports two 3D interfaces, our own interactive 3d Kit and the industry standard OpenGL, which has been licensed from Silicon Graphics.

The Be 3d kit is ideal for realtime and interactive 3D applications like games and data modeling where speed is more critical than quality. Here the demonstration application 3dmov uses the Be 3d kit to create a shaded spinning cube. 3dmov also allows you to drag images, movies, even live video onto each surface of the cube. While simultaneously mapping three images, two movies, and live video to the surfaces of the cube, the user can use the mouse to interactively rotate the cube.

OpenGL, the industry's 3D standard, is great for applications where quality of the final rendering is paramount. The Teapot application is a standard OpenGL test application that allows you to rotate the Teapot as well as use the slider to increase or decrease the quality of the rendering.


Compatibility

While we have started fresh from an OS design standpoint we recognize that the BeOS must be able to work with non-BeOS system and data. This is the reason we support standard networking and data formats. There also are several other elements of BeOS compatibility that are worth examining.

Foreign file system disks

The BeOS File System and Tracker support Be File System and Macintosh formatted (HFS) disks. Additional file system add-ons can provide access to DOS (FAT), ISO 9660, NFS (Network File System), and other foreign file system volumes.

This means that from the BeOS you can have access to all the files on all of your hard drives, and even network volumes. The Tracker provides seamless access to all mounted file systems, allowing you to simply read, copy, etc. files on whatever hard drive, server, or floppy disks you wish.

PostScript and PCL Printing

The BeOS provides basic printer drivers for popular PostScript and PCL printers. There is also a driver interface so printer manufacturers or other developers can write high performance printer drivers for the BeOS.

Anti-Aliased Fonts

Not only does the BeOS supports TrueType fonts, it also adds anti-aliasing capability so that fonts are less jagged and more readable on-screen.

Unicode

The BeOS supports Unicode enabling a system that includes the proper fonts to handle languages (such as Japanese) which have thousands of characters.

The Font application demonstrates how by simply changing the font, both Latin and Kanji characters can be handled by the system.

Command Line/Posix

The BeOS also ships with an application called Terminal which uses a Be port of the Bourne Again Shell (Bash) popular in the Unix community. With Terminal, users can have extensive command line interaction with the system. The BeOS has a Posix-compliant layer that enables Unix utilities to be easily recompiled to run on the BeOS.

The screen above shows some familiar commands and GNU utilities that have been recompiled to run on the BeOS.

Metrowerks, C++, and Java

Be has worked closely with Metrowerks, one of the industry's premier developer tool companies, to provide the primary development environment for the BeOS. To make it easier for our developers we have chosen the award-winning development environment (CodeWarrior) and the two most popular object-oriented languages available (C++ and Java). This means that developers can focus on taking advantage of the unique capabilities of the BeOS, rather than learning to use new tools or languages.

There are currently over 5,000 developers developing products for the BeOS.


Information on the Be Operating System:

  • Be's Media OS Whitepaper
  • BeOS Data Sheet
  • BeOS Specifications
  • BeOS Tour

Copyright ©1998 Be, Inc. Be is a registered trademark, and BeOS, BeBox, BeWare, GeekPort, the Be logo and the BeOS logo are trademarks of Be, Inc. All other trademarks mentioned are the property of their respective owners.Icons used herein are the property of Be Inc. All rights reserved.

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026