Overview of Modesto
Articles and Tips: article
Business Planning and Analysis
Business Intelligence Group
01 May 1998
Describes Novell's new network OS platform and associated services designed to allow developers to take advantage of Intel's upcoming IA-64 processor while still leveraging their 32-bit investment.
As technology moves into the twenty-first century, networking is evolving to support new capabilities and much more rigorous requirements. Networks are getting faster and larger and universally available; computers becoming more powerful and capable of consuming an increasing amount of network data, and content being communicated over networks is becoming richer.
Networking has enabled a continuum of new solutions, beginning in the early '80's with file and resource sharing, later adding application serving and distributed applications, and still later adding the Internet capabilities of E-mail and the World Wide Web. New emerging capabilities, in areas like audio and video streams and richer interactive content, are poised to fully consume and exploit all increases in network capacity.
In this evolution there is a fundamental need for networks to become more intelligent and scalable in delivering these new capabilities. The network (LAN, intranet, extranet, Internet) must evolve from being a simple "router" of information into an infrastructure that provides a rich fabric of services in areas like security, identity, manageability and data storage / replication / caching.
Today, the Novell NetWare platform is specifically designed to support highly scalable services and solutions for intelligent networking. Intel's upcoming IA-64 processor architecture gives Novell the opportunity to advance the NetWare architecture to the next generation of an intelligent networking platform.
Code-named "Modesto," this network OS platform and associated services from Novell will leverage customers' NetWare 5 (32-bit) investment while empowering compelling new capabilities. Most important, Modesto implements new, state-of-the-art OS and networking concepts, and will be the best platform and foundation for delivering the next wave of intelligent networking solutions.
Modesto contributes to the Novell vision of a Java-centric user-network computing, where the user views one "intelligent" network. The user accesses the network resources without concern for where and on what type of network (LAN, Internet, intranet, extranet, etc.) the resource resides. As more and more appliances become attached to this network and as more and more information must be stored and transferred across this network, managing resources is becoming extremely complex. Novell's vision is to simplify this management through "intelligence" in the networking infrastructure.
The advent of the 64-bit architecture allowed Novell to define and deploy a clean platform architecture that exploits the processor while best meeting the current and evolving market demands. Other platforms (NT, Unix, etc.) will not be written from "the ground up" for IA-64. The solution from Novell will provide both backwards compatibility for the NetWare 5 applications and a fully optimized environment for 64-bit applications.
This release of the next generation of intelligent networking platform from Novell supports the value proposition that Novell provides through its Open System Architecture (OSA). With the extension of networking's reach, Modesto manages networking services that extend beyond traditionally defined boundaries.
NetWare 5 Compatible
Modesto will leverage the NetWare 5 (32-bit) investment, while providing a clear path to the future. In parallel with the ongoing evolution of NetWare 5, the Modesto platform will support 32-bit NetWare 5 applications and services as described in more detail below in the "Architecture" section.
Advanced, Modular Design
In designing Modesto, the Novell system architects evaluated several operating system architectures ranging from traditional operating systems to OS architectures currently being studied in academia. To best exploit the IA-64 processor's capabilities and to support Novell's computing vision going into the next century required a break-through architecture and implementation. Extensive industry experience and research at MIT, University of Utah, University of Washington, Stanford University, CMU and other institutions all contributed to the Modesto design.
At a high level Modesto is a Single Address Space operating system with a minimal nano-kernel. The nano-kernel supports primitive abstractions that permit efficient layering of higher level programming environments. Much of the functionality of traditional general purpose operating systems like the UNIX System and Windows NT includes a large infrastructure that is common to all operating system services.
The generality of this infrastructure leads to poor resource usage and overall performance inefficiencies, making it difficult or impossible to create highly-tuned subsystems for performance-demanding services such as the Java Virtual Machine (JVM) or protocol-intensive Internet and web servers. The Modesto design overcomes the overhead of these predecessor systems by partitioning different OS functions that are specific to certain services into separate virtual machines (VM's), where implementation can be optimized to the needs of the services implemented in that VM. All the VMs run over the common services layer provided by the nano-kernel, leading to a much more modular and tuned system.
The multiple virtual machine implementation described in more detail below could not have been possible without this forward-thinking approach. The Novell Modesto platform fully leverages the most advanced operating system technology designs available today and applies them to the next-generation processor designs. And, this OS will continue to run native NetWare 5 services and applications.
New API Set
The second design objective for Modesto is to support a new high performance C/C++ programming environment for native 64-bit operation. The APIs for this environment can be targeted for both 32-bit and 64-bit platforms. While these APIs will be realized natively on Modesto, these APIs will also be hosted on NetWare 5.
This API set provides both internal and external NetWare developers with a common high performance programming environment across the entire NetWare product line. In addition, it provides smooth transition path for those non-Java applications and services to take full advantage of the performance of Modesto while maintaining full compatibility with NetWare 5.
Applications developed to traditional Novell interfaces will run on NetWare 5 and in "compatibility mode" on Modesto in the NetWare 5 VM. Applications written to the new 64-bit clean API set can be compiled to execute either in the NetWare 5 VM or in the 64-bit C/C++ programming environment.
Support NetWare 5
The third objective for the Modesto design is to ensure backwards compatibility with NetWare 5 applications and services. The NetWare 5 platform running on the Intel Pentium processors will continue to service the needs of a strong customer base well into the 21st century.
Novell will continue to evolve this product line, and the NetWare 5 Virtual Machine (VM), which is described below in "Architecture" will continue to track and support the NetWare 5 product line as it evolves. The architectual link between the two environments is the 64-bit API. As NetWare 5 evolves, customers will get updated NetWare 5 services in Modesto via the 64-bit API. As these services are written to this new API set, they can be compiled to run on NetWare 5 in 32-bit or compiled to run 64-bit on Modesto thus providing the same features/services in the appropriate space.
Optimized for Internet Applications
The fourth objective for Modesto design is to support the intense I/O and protocol requirements associated with Internet applications. The Modesto design leverages the capabilities of the industry standard I2O interface. The I2O interface speeds I/O by diverting driver calls to a dedicated processor that handles all driver-specific calls and fields the adapters interrupts.
Passing larger blocks of data without interrupting the host processor, the Modesto design leaves more processor power for running other services and applications. The Modesto design keeps both the LAN and storage paths running in the IA-64 bit mode, minimizing the transitions that the 64-bit processor must make. This increased I/O bandwidth should also improve the performance of applications executing in the NetWare 5 VM.
Third party driver writers will be able to write a single driver that will be supported by not only Modesto, but also with NetWare 5. 32-bit adapters that have drivers written today to the I2O standard will be supported by Modesto. Of course, as new 64-bit adapters and drivers are available, higher levels of performance can be expected.
Supports Multiple Software Development Environments
The tools for development will be industry-standard tools. They will be able to run on Win32, NT, Unix, and Java as cross-platform development environments for Modesto.
When fully optimized for the new operating system and the IA-64 environment, Novell will provide a high performance, scalable, server-side Java implementation. The JVM will be tightly integrated with the system software in ways not available to other vendors while maintaining full compatibility. In addition, the design of the underlying kernel structure will be fully tuned to the requirements of the JVM (such as garbage collection and memory management).
This section provides an overview of the Modesto architecture illustrated in the diagram below.
Figure 1: Modesto architecture.
The basis of Modesto's design is focused on separating out functionality to allow for optimized performance based on process need. Modesto supports this specialized processing through virtual machines (VMs).
As mentioned previously, the Novell design can leverage both the 32-bit and 64-bit environments. The 64-bit nano-kernel performs the low-level hardware management such as low-level interrupt handling, virtual memory management, I/O framework, inter-VM communication, CPU allocation, etc.
Modesto will support services designed for the 64-bit environment as they become available: the file storage system (NSS), Border Manager, other key 64-bit services. These services will ensure optimized functionality for transactions across the network, especially via the Internet.
The 64-bit API Layer
This is the high performance programming environment designed to support services written in C/C++. The APIs defining this environment can be targeted for either a 32 bit or a 64 bit platform. While these APIs will be implemented natively on Modesto, they will also be hosted on NetWare 5, thus permitting a smooth transition between the two environments.
The Modesto Compatibility and Migration Strategy
This next-generation, intelligent networking platform from Novell provides backward compatibility for applications and services written for NetWare 5 and the Pentium 32-bit architecture. Novell will take a phased approach to implementing new services on the Intel IA-64 processor. By providing this approach, we guarantee a smooth transition path for our developers and our customers.
Novell is partnering with industry-standard tool providers to ensure that developers will have available those tools necessary to create their applications enhance the development capabilities on NetWare 5 and to provide a clear path to exploit the 64-bit design of Modesto. Novell will support an industry-standard executable format on Modesto to enable developers to use tools from multiple vendors. The Developer Toolkits from Novell will become available as the environment matures.
Schedule and Road Map
The Novell Modesto platform release will coincide with the delivery of the first Intel IA-64 processor. Pre-release software will be available in a complete Beta program from Novell. Our Developer Program includes Developer Toolkit releases as described previously.
* Originally published in Novell AppNotes
The origin of this information may be internal or external to Novell. While Novell makes all reasonable efforts to verify this information, Novell does not make explicit or implied claims to its validity.