Where is Microsoft Headed?

Bob Muglia, Microsoft's Director of Windows NT, answers the questions you asked Windows NT Magazine about Cairo and NT.

Bob Muglia

August 31, 1995

14 Min Read
ITPro Today logo

Where is Microsoft Headed?

Recently, Windows NT Magazine interviewed Bob Muglia, Microsoft'sDirector of Windows NT. We asked him many of the questions youhave asked us in focus groups, on CompuServe, and on the Internet.Muglia's responses are enlightening and provide a sneak peak atthe future directions of Microsoft and Windows NT. Here is thebulk of that interview.

What are your views with regard to where you think the desktopis going?

When we started focusing on our strategy of Windows and WindowsNT in 1990, we realized that the hardware requirements were suchthat it was not possible to have a single operating system thatmet all the requirements customers have. That's why we've beenpursuing a dual operating-system strategy with, first, Windows3.x and now Windows 95 as a high-volume general-purpose operatingsystem which satisfies the needs of most people.

At the same time we were building a higher-end operating system,Windows NT, that satisfies the needs of customers who want a secure,robust environment and also servers. It turns out that the characteristicsof a robust, high-end desktop and a server are pretty common.That will be true for about two more years. Because of the hardwareprice point, it's necessary to continue to have two differentoperating systems. NT today is a 12MB minimum operating system-16MBto serve an optimal configuration for most simple desktop uses.For more advanced stations, you may want more memory-potentially32MB, or 64MB if you're doing very high-end CAD or compute-intensivework. As time goes on, that distinction begins to blur. The machinesthat people are buying now are Pentium P75s, P90s, 16MB of RAM,and those machines are very capable of running NT.

There is an installed base of 70 million DOS/ Windows machinesthat probably aren't capable of running NT. Windows 95 has a tremendousmarket to upgrade that base. In fact, for consistency reasonspeople will buy Windows 95 for some time.

If you look forward, though, in about two years, it will becomeapparent that NT-especially for business uses-will be able tosatisfy what people need because the hardware will have advanced.Now, we are putting NT first into business because that's whereits characteristics are most important: its robustness and security.Certainly by the end of the century-probably as early as 1997,1998-we'll begin to see business shifting over to NT.

It'll take longer for the home to shift, because one of the thingsNT does is compromise some compatibility for the robustness characteristics.It's just not possible to be robust and crash-proof and to runevery application. You have to make a trade-off. Where we've madethose trade-offs up until now, we've made them toward robustness.

As the applications go to Win32, the games go to Win32 with WING and DCI, you're going to see those things all run on NT in arobust way. You begin to be able to run "Grandma and me"on NT. Then you can potentially bring the system down or havea high-end game asking the first question, to insert a boot disk.We're not there yet, and I don't think we'll be there for another24 months. But as the games market shifts, we can begin to moveNT into high volume, not just in business but in the home. I thinkyou'll see that in probably four years.

I'm confident we will be able to get to a single kernel architecturea single operating-system architecture. Whether we choose to packagethat differently-continue with the two distinct brand lines-issomething that we'll have to figure out. It will reflect whatthe marketplace wants. We're beginning to see this distinction,where corporate wants the ability to download software. They wantto be able to manage their desktop; they want a series of thingsthat are very different from what people want in the home.

By the way, when you have a question about NT/Cairo, recognizethat Cairo is NT. It's simply a follow-on, an upcoming releaseof NT. In fact, every day, we do a Windows NT 3.51 build, andwe do a Cairo build. And we do it out of the same source tree.

In some of the other environments-I think it's true of both thedesktop and the server, but it's much clearer on the desktop-thekey to success is the application base. Today, it is dominatedby Windows 16-bit applications, but it is moving overwhelminglyto Win32 and OLE as the fundamental characteristics of these APIsare built. Because the applications are in Windows today and they'llbe in Win32 tomorrow, the predominance of the desktop will stillbe Windows-based. We may change the characteristics, but fundamentallyit will still be Windows.

Will we see more size and performance tuning in NT in the nearfuture?

When we shipped NT 3.1, we had few distinguishing characteristicsbetween the workstation and the server in terms of performance.When we went to 3.5, we changed that fairly significantly. Thebasic pieces of the system are the same: The kernel is the same;the device drivers are largely the same; the user GDIs are thesame; but we tune it differently for a workstation or a server.A server is tuned for throughput, and workstations are tuned forresponse time. A Windows application will run on NT Server, butit will not run as fast as it will on NT Workstation. You're notgoing to get the kind of service you'll get out of a workstation;it's not meant for that.

Let me elaborate a little bit on performance: We made massivechanges in 3.5, as you know. In 3.51, we have more subtle changes,but they're still distinct. We've improved OLE performance considerably,and NT Server is around 10% faster than it was in 3.5. If yourun an OLE application like Word or Excel, you will notice that3.51 is faster. We still see tremendous opportunity to improveperformance on NT, and we will continue to do that in upcomingreleases.

NT still lacks many features needed for large-scale mission-criticalapplications. What are your plans to remedy this?

What NT people are trying to do in many cases is use a PC-basedsystem to replace a business-critical function that formerly ranon a higher-end UNIX system or on a mainframe, a system like aVAX. We are not yet at the point where we can replace all thesesystems. There are certain characteristics that we don't havein place yet, but we're getting there.

It is our intent over the next couple of years to fill in allthe pieces. Peripheral systems operation is very critical, andin an upcoming release of NT, you'll see the ability to do thingslike replace disks that are part of stripe sets or mirrored volumeswithout having to reboot to restore them.

We're not exposing things like memory quota but it can be exposedas a programmer option. When you write a program in Win32, youcan specify the memory quotas it uses. We'll probably expose themin the future, but the most important is disk, and we will dothat.

When it comes to system duplexing, we probably will not do whatNovell does with SFT III (System Fault Tolerance). SFT III, whichis truly a UNIX server, relies on the fact that NetWare is a non-preemptiveoperating system. Since you're not driven by interrupts, you canschedule things and keep two machines in synch. In a pre-emptiveenvironment, which is completely interrupt-driven, it's virtuallyimpossible to do. So, that's not an appropriate avenue to take.Our plan is to work on loosely coupled systems. In fact, Digitalhas done some work to provide clustering for NT, and we're workingwith them and other vendors to provide general clustering solutions.

Will the Windows 95 UI be available for Windows NT?

Basically, when customers adopt NT Workstations and they've gotWindows 95 in a mixed environment, they want a common UI. We'veaddressed the applications' need to run on both NT and Windows95 in NT 3.51. It's incredibly straightforward to build an applicationthat works in both environments.

In 3.51, we moved to Win Help 4 which is identical to Windows95. The major aspects of the UI from an application perspective,such as the new control, the tab dialogs, things like that, areavailable in 3.51. When we update Office and Lotus updates SmartSuite and everybody else rolls out their Windows 95 applications,that can be done on both platforms without any changes.

However, customers still ask for the Windows 95 UI. We don'thave an absolute schedule for it but we've become more sophisticatedin the development environment, so now it's possible for us toship a shell update release without impacting Cairo.

Cairo is just another technology that we're incorporating intothe next release of NT, both the Server and the Workstation. We'rethrilled about the acceptance of our NT 3.5 Server. It is farbeyond our expectations-the numbers of people buying it. Our customersare deploying it to run their businesses, and it's working.

The combination of NT Server, BackOffice, and the applications-aswell as third-party applications-is just tremendous. You can seethe developers' community galvanizing on NT Server to build serverapplications because it has the characteristics they need. Theyneed a robust environment; they need a great development environment.I think it's pretty straightforward to say that NT is the bestapplication development environment available today. It has theserver that they need, the ability to run programs as a service,to log in the event log, to leverage our security, to providehigh-performance I/O, full multithreaded pre-emptive support,SMP support-all those things that those same people need to develophigh-end server applications and in a secure environment.

That's where the emphasis seems to be today. More than any otherenvironment-more than NLM, more than UNIX-we're seeing the developmentcommunity move to NT Server. Cairo will provide more servicesto leverage, more distributed capabilities to build on.

Windows NT lacks features such as At Work Fax and Plug andPlay. Do you intend to remedy this situation?

We probably will pull in At Work Fax. It's a separate technology.Plug and Play is complicated enough so it's probably a Cairo feature.When you think about what Cairo is about-distributed support ofOLE-it's the advanced directory service and the query capabilitiesthat the new file system provides. Another major thing is Plugand Play.

How well do you think NT competes with UNIX?

The interesting thing about this is the word UNIX. I can talkabout NT and how it compares to Solaris or AIX or HP-UX. But oneof the key distinctions is that where NT is one operating systemon four platforms-x86, MIPS, Alpha, and PowerPC, currently runningon and certified to run on over 5000 pieces of hardware-UNIX isscattered on at least three or four different major platformswith somewhat different programming interfaces, so there reallyisn't direct portability between those environments. I think thebiggest difference for developers is that they can write to NTand get all the x86 applications by running it on Intel machines.If they want to run it on RISC, it's straightforward and cost-effectiveto do that and get the high performance that some of those RISCmachines offer. That's probably the biggest difference.

From a technical perspective, NT combines the things that youthink you should find across UNIX even if you don't always findthem. NT has the thread-level preemptive scheduling that's startingto creep into UNIX today; UNIX historically has had process-levelscheduling. NT has high-performance I/O, something you typicallyfind in UNIX. NT has the Windows UI so that total compatibilityis maintained with all the applications written for Windows. It'sstraightforward for people to write an application that runs bothon NT and on Windows 95 (or Windows 3.1 with the Win32 API). Itprovides an environment that's much more compatible with the PC.

In two years, I'm not sure there will be such a thing as a workstationmarket. But right now, Windows NT Workstation is outselling anyversion of UNIX.

What kind of enterprise layout method is NT Server going touse?

NT today provides a single logon across an enterprise which isthe number one feature that people look for in directories. Infact, it's possible to layer functionality on top of our directoryservice like we do with SNA Server, like we're going to do withExchange. Exchange extends the directory that's in NT today.

In Cairo, we took a massive step forward in directory functionality.If you look back at what directories have done, it's always beenseparate databases that are distinct from the file system. NDScertainly is; Street Talk is; and X.500 always is. In Cairo, we'retaking the directory we have today and unifying it with the filesystem. So the file system becomes the storage place for the directory.That means there's one name space instead of two. That means thattraditional desktop applications can access the directory withouthaving to call a whole new set of APIs. It also means you canstore anything-you can store a file system in the directory.

In a traditional directory like NDS, you have to decide whetheryou want to store an object in the file system or in the directoryservice. That has a big impact on the capabilities you have inaccessing that object. The file can be any size when you takequeries for it. The directory is limited in size, but you canquery it. In Cairo, those distinctions are eliminated. There isonly one name space and one storage location. You can store objectsof any type, and you can use the full query facilities to getat them.

Are there pieces of other operating systems you'd like to addto NT?

Clustering is definitely a function we're going to be adding.The biggest thing is taking large enterprise-wide things, suchas mainframe systems, and trying to transform those capabilitiesinto NT in a much more distributed environment.

Some things that are fairly simplistic, like batch queuing, willmove to NT in the future. There's nothing in the operating systemthat prevents us from having a traditional batch queue. It's justa utility that we need to write. That's the sort of thing we'llbe doing. We don't need to make significant changes to the core.

As technology moves forward, we need to make sure that NT runson all the hardware. The hardware advances are changing so often.We're building in ATM support, frame-relay support, a communicationspatch that we need to add for the P6 when that comes out fromIntel, and naturally PowerPC support. We have to keep up withand stay ahead of the curve on hardware.

NeXT is used as a toolset. It started as a hardware platform,transformed into an operating system, and is now being portedto NT as a toolset. I think it's great that Steve Jobs is movingNeXT onto Windows 95 and NT. We think of NeXT the same way wethink of Borland and its new Delphi product. It's great to havegood tools on NT, and certainly our developers' division is creatingtoolsets that will compete with them. One of the things NeXT requiresis a robust component architecture for the integration of components,and we have that already in NT with OLE.

What's the next generation operating system going to be?

NT is the next generation operating system. If you look at whereour competitors are going with their operating systems, they'retalking about building operating systems that look a lot likeNT. IBM has talked about doing it with Workplace/OS-microkernelbase, portable architecture. Novell has talked about moving offthe single architecture, single-tasking, non-pre-emptive, non-memory-managedbase operating system that they have today with NetWare and movingto something called SuperNOS. It has a lot of the same characteristicsas NT-a microkernel portable architecture with more modern featuressuch as pre-emptive multitasking.

If you look at where this industry is going, it's moving to platformsthat are a lot like NT. We have that architecture in place. Wehave an object architecture in place with OLE, and now our taskis to add functionality to deliver value to the end user. In thefuture, we want to give OLE distributed support. People want moresophisticated client/server applications using OLE technology.We're providing higher-level services as the world moves to thedistributed environment.

Distributed computing in the past focused on monolithic machines,proprietary architectures, or proprietary-use versions. That sortof computing is dead. It's moving very rapidly now to client/server. NT provides a great base for building client/server appswith Windows on the client and NT on the server.

The next step is a truly distributed environment where companieswill be moving the data from a centralized location to the peoplewho actually need it. To do that requires a whole set of services,such as data replication, management of wide area networks, asophisticated directory, and utilizing the file system for morethan simple storage. Now that we have the foundation in placewith NT, our focus is to add those services that provide peoplewith distributed capabilities.

I think people are moving toward distributed services and todo that you need a foundation like NT. Then you've got to buildyour services on top of that. The foundation is in place, andnow we're investing in the pieces on top.

If you could tell Windows NT developers one thing, what wouldit be?

The key to successfully moving forward is to exploit the thingsthat Win32 provides, to focus on developing great Win32 apps bybuilding the best possible high-performance applications. Theyshould utilize the functions and leverage the capabilities inWin32 and OLE to differentiate their product from their competitors'and solve their customers' problems. We built the operating systemto have the capabilities to solve tough customer-driven problems.That only works if the developers exploit everything that's there.The key is to just go for it.

Read more about:

Microsoft
Sign up for the ITPro Today newsletter
Stay on top of the IT universe with commentary, news analysis, how-to's, and tips delivered to your inbox daily.

You May Also Like