Sun Microsystems 2 manual Multitasking Safety

Page 17

C H A P T E R 2

Multitasking Safety

The Java Wireless Client software provides the ability to run multiple MIDlets concurrently in a single OS process. From the standpoint of the OS, there is one process and one Java virtual machine. However, from the standpoint of a Java application, it appears as if it is running in its own, independent virtual machine, isolated from other Java applications.

These apparently independent virtual machines are called tasks. Each MIDlet runs in its own task. When a new MIDlet is started, a new task is created for it. When a MIDlet exits, its task is destroyed. The Application Management Software (AMS) runs in a dedicated task, and it is running the entire time the Java Wireless Client software is active.

Although tasks cannot interact (they cannot access each other’s objects, for example), they do share native code, process resources, and external resources. This sharing leads to some implementation issues, both in native code and in Java programming language code (Java code). The Java Wireless Client software takes these issues into account. Those who want to integrate existing libraries, which might not have been written with multitasking in mind, also need to be aware of the issues so that they can add the source code correctly.

Code integrated into the Java Wireless Client software must be multitask safe. That is, it must maintain the independence of one task from another. Because tasks run in a single operating system process, the OS process can run native code for any task. To keep tasks from interfering with each other and with each other’s data, the code must be made aware of the task on whose behalf it is being called and possibly allocating resources. When the task context is established, the code is considered multitask safe.

This chapter points out issues that might arise in ensuring native code is multitask safe. It also provides techniques for making the code multitasking safe in different situations.

5

Image 17
Contents Multitasking Guide Page Contents Glossary Index Code Samples Vi Multitasking Guide May Tables Viii Multitasking Guide May Before You Read This Guide PrefaceRelated Documentation How This Guide Is OrganizedAaBbCc123 Typographic Conventions Used in This GuideSun Welcomes Your Comments Accessing Sun Documentation OnlineIntroduction Multitasking Mechanisms Compared With Policies RobustnessMultitasking Guide May Multitasking Safety Multitask Safety and Multithread Safety Global and Static Data Singletons Code Example 2-1Native API for a Microwave Oven Multitasking Safety ExampleTypical usage of this API is shown in Code Example Multithread Safety Code Example 2-5Using the Locking Mechanism Multitask Safety Code Example 2-7Migrating Initialization to Native Code Establishing Per-Task Context Code Example 2-8Keeping State in Java Code Code Example 2-9Implementing the Native ncook Method Kniexport Knireturntypeint Multitasking Safety Multitasking Guide May Managing Native Resources Reservation Resource Management MechanismsLimit Revocation Default Resource Allocation PoliciesCustomization of Resource Allocation Policies Maximum number of tasks isolates allowed Managing Native Resources Multitasking Guide May Switching the Foreground MIDlet Other Multitasking IssuesAlternative Policies and Their Implementations Default PolicyScheduling the CPU Default CPU Scheduling Policy Interrupting the User Default User Notification PoliciesGlossary Java Community ProcessTM Jcptm Glossary Sun Java Device Test Index Multitasking Guide May
Related manuals
Manual 58 pages 34.88 Kb

2 specifications

Sun Microsystems, founded in 1982, was a significant player in the computing industry, best known for its innovative technology solutions and workstations, particularly the Sun-4, which represented a key milestone in the company's history. The Sun-4 architecture, launched in 1987, utilized the SPARC (Scalable Processor Architecture) RISC processor, notable for its high performance and scalability.

One of the primary features of Sun Microsystems' platforms was their ability to efficiently handle multitasking and resource management, making them ideal for enterprise-level applications and development environments. Sun-4 workstations boasted impressive graphics capabilities with the addition of advanced graphical user interfaces, support for color displays, and the SUNVIEW windowing system, which enhanced user experience and productivity.

The Sun-4 systems also supported the SunOS operating system, which was based on UNIX. This operating system was engineered for stability and robustness, offering features like multiuser support, networked environments, and advanced security options. Moreover, SunOS provided seamless integration with various programming languages, including C and C++, facilitating software development that aligned with industry standards.

Another standout characteristic of Sun Microsystems was its commitment to open systems and standards. By providing developers with comprehensive tools and environments, such as the Standardized Application Programming Interface (API) and support for networking protocols, Sun facilitated interoperability among different computing platforms. The emphasis on open architecture also meant that customers could easily upgrade their systems without being locked into proprietary solutions.

Sun Microsystems was also ahead of its time with innovations in network computing. Their workstations were among the first to support network file systems and distributed computing concepts, enabling seamless data sharing across multiple systems. With the introduction of the Network File System (NFS), Sun revolutionized how data was accessed and managed across networks, which played a significant role in the evolving landscape of client-server computing.

In summary, the Sun Microsystems 2 and its successive innovations in workstation technology highlighted the company's forward-thinking approach. By integrating powerful performance with open systems, robust operating systems, and advanced networking capabilities, Sun laid the groundwork for modern computing, influencing various sectors from academia to enterprise solutions. Even after its acquisition by Oracle in 2010, the legacy of Sun Microsystems continues to be felt across the computing industry.