USA India
Home Articles UserTV Press Releases Dictionary Books Education Careers B-Channels Resources Forums Blogs Classifieds
Monday 1 Dec, 2008 Register Login
Archives
Articles By Date
Articles By Category
 
 
 Archives >> Details
OS X, Part II
What OS X means for you
Posted by : Dennis Sellers

This is the second of three columns looking at Mac OS X, the next-generation operating system from Apple that's due in early 2001. For those who can't wait that long--and for more adventurous users--Apple has released a public beta. So what will Mac OS X mean for you? What are its benefits? Let's look at some of the buzzwords surrounding X and what they mean in real-world scenarios.

Protected memory

We Mac users like to boast that our systems don't crash as often as Windows. And (ahem) that's true, but they do occasionally crash. And when one application goes down, your whole system can go down in flames alongside it. That's because the current Mac OS doesn't have protected memory. Mac OS X will.

Protected memory means that the operating system won't let applications grab a hunk of memory that belongs to another app--or to the operating system itself. By implementing this, Mac OS X will make your Mac more crash-resistant.

In other words, Mac OS X will have a modern, robust protected-memory architecture that allocates a unique address space for each application or process running on the computer. When apps and processes are isolated in their own memory space, they can't interfere with each other if one goes bad. And when one program starts acting naughty, Mac OS X will simply shut it down, close down its memory space, and let you continue working. You won't have to restart your computer.

Better virtual memory

But wait, there are even more memory goodies in Mac OS X. It will have a more efficient virtual memory (VM) manager. VM is addressable memory beyond the limits of the available physical (real, if you will) memory.

In the current Mac OS, the user decides via the Memory control panel whether to use virtual memory and how much to use. And the selections don't take place until you restart your Mac, at which time the OS allocates the user-specific amount of VM and its corresponding disk space. Launch application, and the operating system allocate fixed-size memory partitions.

But VM is always on in Mac OS X. In fact, you can't turn it off. And it's dynamically allocated; in other words, you won't have to specify a fixed amount for it.

In theory, virtual memory is a good thing, because it enables programs to use more memory than is physically present on a machine. It does this by swapping out portions of memory to disk in order to re-use that memory for other processes. But so far, this has meant reduced system performance on the Mac OS (you've probably used software that specifically tells you to disable virtual memory) because disk access is slower than memory access. The Mac virtual-memory implementation has always been slow, but Apple says this will change with Mac OS X.

Extensions, hit the road

Another reason that Mac OS X should be more stable than the current operating system is that it will do away with extensions, those patches to the operating system that add extra capabilities. Extensions are one of the most notorious causes of system conflicts and crashes. On the other hand, they've often been necessary to tweak the operating system for a particular application or task.

For this reason, Apple says it will leave some hooks in place, not just for backward compatibility, but also to allow loadable sets of services. However, these will probably resemble the installable modules used by Linux and most versions of Unix.

If those terms scare you, don't worry. Functionally speaking, end-users like us probably won't see much of a difference, except that our Macs won't have to load rows of extensions when booting. In other words, it seems that OS X will replace traditional extensions with faceless applications that run invisibly. As they run, they'll modify the system in whatever way they are meant to.

Pre-emptive multitasking

X will also mark the spot when it comes to pre-emptive multitasking, the ability of applications to interrupt each other, do some processing, and surrender control to other processes when necessary. The current Mac OS can (sorta) do multitasking, but not very effectively, using what is called cooperative multitasking. Under this system, apps need predefined size information in order to tell the system what resources they require. Programs must explicitly tell the Mac OS when they can be interrupted.

On the other hand, pre-emptive multitasking forces applications to share processing time. It's a historical feature of intrinsically multitasking operating systems such as Unix. And to oversimplify matters, a Unix engine powers Mac OS X. In Apple's words, pre-emptive multitasking "works like an air traffic controller, watching over your computer's processor-prioritizing tasks, making sure activity levels are at maximum, and ensuring that every task gets the resources it needs."

Multithreading

If multitasking sounds cool, how about multithreading? It is cool, but it's a bit complicated to explain.

A thread is a path of execution, a subprocess that runs within the context of a "parent" process, sharing access to the data and other resources of the parent. For example, one thread in a program might handle user interactions, another might tackle calculations, and a third thread might deal with input-output operations.

With Mac OS X, developers can divide operations so that they're performed by more than one process, by more than one task in a single process, or by more than one cooperatively scheduled thread within a single task. Threads are usually started to manage different input and output events. One thread can be waiting for mouse clicks, another one can be waiting for a monitor's keyboard input, while a third can perform screen updates.

The result should be OS X native applications that run more efficiently. Since they share access to the resources of the parent process, they require fewer resources themselves.

The current Mac OS uses pre-emptively scheduled tasks. The microkernel--the central part of the operating system that controls the rest of the OS--can butt in on these tasks at any time and cause them to execute in any order. But cooperatively scheduled threads can't interrupt each other. They turn over control to each other at developer-defined points.

Multiprocessor support

Mac OS X will also have built-in support for computers with multiple processors. And Apple has, not coincidentally, just released two multiprocessor Power Mac G4 minitowers.

The current Mac OS can't easily take advantage of multiple processors. Developers have to specifically program software programs for them to find and spawn threads onto more than one processor. If that doesn't happen, the additional processors just sit there like bumps on a log, doing nothing. Mac OS X, however, will assign each thread to whichever processor has less to do, so there'll be no slackers sitting around idle. This is called symmetric multiprocessor (SMP) support.

With an SMP system like OS X, every processor on the computer executes its own copy of the operating system and communicates with other processors as needed. Developers don't have to perform special programming to take advantage of SMP systems. Rather, the OS itself automatically schedules multiple tasks to execute simultaneously on any available processors. The result: big performance boosts.

About those Unix underpinnings

A few paragraphs up, we said that Mac OS X was Unix-based. That sounds kind of scary. What will keep us average users from having to open and interpret the dreaded config files? Even more, what will stop us from screwing up those files?

Apple says not to worry. The company is going to great lengths to hide the Unix underpinnings from the end-user. By default, most of the UNIX "services" that require configuration files will ship disabled. Many of them will not even be installed by default. Those that are enabled and user-configurable will have a configuration panel in the Control Panel (yep, Mac OS X will only have one, not the couple of dozen present in Mac OS 9.) Those that simply can be turned off or on with no configuration will have a radio button somewhere to do that.

However, power users who enjoy knowing everything about their systems will want to have access to config files just the same way that current power users enjoy playing around with ResEdit and Norton's Disk Editor from time to time. To this end, Apple has publicly demoed an XML config-file editor that offers a graphical user interface for config-file editing for those who need it.

In fact, according to Apple's "Inside Mac OS X: System Overview," a book for developers, Mac OS X may come in two versions. "Normal" users will buy a version that doesn't contain much of the command-line Unix layer, and only developers or server administrators will get the Unix tools. This way, third-party developers won't be able to distribute software whose installation instructions include mind-boggling things like "type ./configure, then edit /etc/foo.conf."

Next month, we'll look at Classic, Carbon, Cocoa, and Java--and explain what the heck they are and how they work with OS X.

Contributing Editor Dennis Sellers also writes for several Mac-specific publications.

 
 
Archives by Date
 
 
 
 
 
Copyright © 1994-2008 ComputerUser, Inc., All Rights Reserved All marks are trademarks of ComputerUser Media.
Reproduction in whole or in part in any form or medium without express written permission of ComputerUser, Inc. is prohibited.
About us | Terms of use | Privacy Policy | Legal | Trademark/Copyright | Awards | Advertise | Writer guidelines | Sitemap Html Xml | Contact | FAQ's | Feedback  | Link to us

Here are the topics we cover computer certification computer careers computer training computer games consulting data recovery data security digital entertainment emerging technology gadget reviews handheld computers hardware reviews home automation home networks home office how-to advice internet linux local companies local news local profiles macintosh mp3 players network security online music online security open-source small-business technology soho software reviews technology books technology dictionary vpn web site reviews wi-fi windows wireless technology tech articles tech news press releases tech dictionary education resources career solutions create your personal blog upload your videos become a writer usergroups special interest group SIG 3com cipts adobe adobe certified expert apc ncpi apple achds acpt acsa actc avaya bea 8.1 certified administrator 8.1 certified architect 8.1 certified developer 9 certified administrator bicsi rcdd checkpoint ccmse ccsa ccsa ngx ccse ccse ng plus with ai ccse ngx cisco access routing and lan switching ccda ccdp ccie ccip ccna ccnp ccnp old ccsp ccvp crmam ip communications optical proctored exams for validating knowledge sales specialist storage networking vpn and security wireless lan citrix cca 3.0 cca 4.0 cca 4.5 cca xp ccea 3.0 ccea 4.0 ccea xp ccia ciw ciw associate ciw certified instructor master ciw admin master ciw designer master ciw enterprise developer security analyst comptia a+ network+ security+ server+ computer associates ca cusa cuse cwna cwna cwsp dell eccouncil cea cep certified ethical hacker chfi e-commerce architect emc emc specialist implemenation technology foundations enterasys ese eta exam express exin exin itil extreme networks ena ens filemaker f7cd f8cd fortinet fortigate foundry cne fujitsu fujitsu guidance software ence hdi css hda hdm hdsa hitachi hitachi certified professional hp ais apc app aps ase certified systems developer csa cse master ase huawei hcne hyperion hcp ibm advanced deployment professional advanced technical expert application developer business process analyst certified administrator certified advanced system administrator certified advanced technical expert certified associate developer certified enterprise developer certified solution designer certified specialist certified systems expert database administrator db2 deployment professional enterprise developer eserver certified specialist ibm on demand business solution advisor solution designer solutions developer solutions expert storage administrator system administator iisfa cifi intel isaca cisa isc cissp sscp iseb itil ism cpm juniper jncia jncis legato lcaa lcea lotus clp lpi lpic level 1 lpic level 2 lpic level 3 macromedia mcafee mcdata csnd microsoft crm mbs mcad .net mcdba mcdst mcitp mcp mcpd mcsa longhorn mcsa 2003 mcsa 2008 mcsd .net mcse mcse 2000 security mcse 2000 to mcse 2003 upgrade mcse 2003 mcse 2003 messaging mcse 2003 security mcse 2008 mcts microsoft business solutions microsoft partner competency mile2 cnsa network appliance nac-na nac-nie naca nace nacp network general sniffer certified professional nokia nokia security administrator nortel ncde ncds ncse ncss ncts novell5 cna 5 cne 6 cna 6 cne 6.5 cne cne upgrade omg ocup oracle 10g dba 10g oca 11i 8i dba 9i dba 9i internet application developer oca ocp8 to ocp8i dba upgrade exam pmi project management professional polycom pcve redhat rhce rhct sair sas institute sas scp saas scp snia snia certified architect snia certified professional snia certified systems engineer snia storage networking certification program administrator professional associate symantec scse scsp scta scts teradata tca v2r5 tcad v2r5 tcda v2r5 tcis v2r5 tcm v2r5 tcp v2r5 tia ccnt ctp tibco tcp trusecure ticsa veritas infraguard chamber of commerce vcp vmware certified professional webex linkedin facebook myspace Professional page layout, image editing, vector illustration, and print production Website design, development, prototyping, and blogging Creation of rich interactive content Industry-standard visual effects and motion graphics Video capture, editing, and production; DVD titling; and digital audio, Adobe Photoshop CS3 extended, Adobe illustrator CS3,Adobe indesign CS3,Adobe Acrobat 8 Professional, Adobe Flash CS3 Professional, Adobe Dreamweaver CS3,Adobe Contribute CS3,Adobe Fireworks CS3,Adobe After Effects CS3 Professional, Adobe Premiere Pro CS3,Adobe Soundbooth CS3,Adobe Encore CS3,Adobe OnLocation,Adobe Bridge CS3,Adobe Version Cue CS3,Adobe Device Central CS3,Adobe Stock Photos, Intel Pentium 4 (1.4GHz processor for DV; 3.4GHz processor for HDV), Intel Centrino, Intel Xeon, (dual 2.8GHz processors for HD), or Intel Core, Duo (or compatible) processor; SSE2-enabled processor required for AMD systems Microsoft Windows XP with Service Pack 2 or Microsoft Windows Vista Home Premium, Business, Ultimate, or Enterprise (certified for 32-bit editions) 1GB of RAM for DV; 2GB of RAM for HDV and HD; more RAM recommended when running multiple components 10GB of available hard-disk space (additional free space required during installation) Dedicated 7,200 RPM hard drive for DV and HDV editing; striped disk array storage (RAID 0) for HD; SCSI disk subsystem preferred Microsoft DirectX compatible sound card (multichannel ASIO-compatible sound card recommended),1,280x1,024 monitor resolution with 32-bit color adapter Blu-ray burner required for Blu-ray Disc creation OHCI compatible IEEE 1394 port for DV and HDV capture, export to tape, and transmit to DV device QuickTime 7.1.2 software required to use QuickTime features Broadband Internet connection required for Adobe Stock Photos* and other services

3PAR, Accellion, Acronis, Actional, Active Endpoints, ActiveGrid, activePDF, ActiveServers, ActiveState, Actuate, Adaptec, Agile Software, AGiLiENCE, Agilysys, Akorri, AlachiSoft, Alter Logic, Altor Networks, Altova, AMD, AMDAHL, Amentra, Amyuni, anacubis, Apani, APC, Appcelerator, AppSense, AppStream, Array Networks, Ascential, Astaro, Attune Systems, Autodesk, AutoVirt, Availl, Avanade, Azul Systems, Barracuda Networks, BEA Systems, B-hive, Black Duck Software, Blackbaud, Blade Network Technologies, Blue Coat, Blue Lane, BlueArc, BlueNote Networks, BluePheonix Solutions, BMC Software, Borland, Bristol Technology, Brix Networks, BroadVision, Brocade, Burton Group, Business Objects, CA, CalAmp, Cassatt, Cast Iron Systems, Catbird, Cayenne Technologies, Ceedo Technologies, Cenzic, Certeon, CiRBA, Cisco Systems, Cision, Citrix Systems, ClearApp, ClearCube Technology, CollabNet, Compass America, Composite Software, Compugen, Compuware, Configuresoft, Continuity Software, Coraid, Courion, Coyote Point Systems, Crescendo Networks, CSC, DataCore, DataSynapse, Dell, Desktone, Digipede Technologies, Double-Take Software, Ecora Software, EDS, eG Innovations, Egenera, Elastra Corporation, Electric Cloud, Embotics, EMC Corporation, Emulex, Endeavors Technology, Enigmatic Corporation, Enterprise Management Associates, Entuity, EqualLogic, Ericom Software, ESRI, EVault, eXludus Technologies, F5 Networks, FalconStor, FastScale Technology, Foedus, Force10 Networks, Fortisphere, Forum Systems, Fujitsu, GemStone Systems, Getronics, GlassHouse, Green Hills Software, Grid Dynamics, GridGain Systems, GT Software, Hitachi, HP, Hyper9, Hyperic, IBM, ICEsoft, IGEL Technology, Illumita, ILOG, IMEX Research, Information Builders, Ingres, InstallFree, Integrien, Intel, Intellium, International Computerware, iTKO LISA, JBoss, Juniper, KACE, Kidaro, LeftHand Networks, Leostream, Lifeboat Distribution, Liquid Computing Corporation, Liquid Technology, Lynux Works, Mainline, ManageIQ, Managed Methods, ManageSoft, Marathon Technologies, McAfee, Mellanox Technologies, Microsoft, Mid-Atlantic Computers, Mindbridge Software, Mindreef, MKS, MonoSphere, Motorola, MQSoftware, mySoftIT, NASTEL, Ncomputing, NEC, Neocleus, NeoPath Networks, Neoware, NetApp, Netegrity, Neterion, Netuitive, Neverfail, Nexaweb, NextAxiom, Nimbus, Nimsoft, Niyuta, NoMachine, Novell, ONStor, Opalis Software, Open Kernel Labs, OpenSpan, OPNET Technologies, Optaros, OpTier, Oracle, Pano Logic, Parallels, Parasoft, Perforce Software, PHD Technologies, Phoenix Technologies, Phurnace Software, Pillar Data Systems, PlateSpin/Novell, Progress Software, Prolifics, ProSync Technology, Provision Networks, QLogic, Quest Software, Racemi, Raritan, Raxco Software, Red Hat, Reflex Security, Resolution Enterprises, RingCube Technologies, Riverbed Technology, Rogue Wave Software, RSA Security, Sagnet Solutions, SanDisk Corporation, SAP, SAVVIS, ScaleMP, Scalent Systems, Seanodes, Secure Command, Secure Computing, Sentillion, Shavlik Technologies, ServInt Internet Services, Silpion IT Solutions, SIMtone, Skytap, Skyway Software, Software AG, Sonasoft, SourceGear, Splunk, StackSafe, SteelEye Technology, StillSecure, StoneFly, Stonesoft, Stoneware, StoreVault, StrikeIron, STT WebOS, Sun Microsystems, SunGard, Supermicro Computer, Surgient, SWsoft, Sybase, Symantec, Systar, TBD Networks, Tenfold, TheInfoPro, Thinstall, Third Brigade, TIBCO Software, Tidal Software, Tideway Systems, TOA Solutions, TRANGO Virtual Processors, Trend Micro, Tresys Technology, Trigence, Tripwire, Ulteo, Unisys, United Devices, VaST Systems, VDIworks, VeeAm Software, Verari Systems, Verio, VeriSign, Vicom Computer Services, VirtenSys, Virtera, Virtual Iron, VirtualLogix, Virtugo Software, Virtutech, VisionCore, Vizioncore, VKernel, VMLogix, vmSight, VMware, Vordel, vThere-Sentillion, Vyatta, WaveMaker, Web Age Solutions, WSO2, Wyse Technology, XDS, XenoCode, Xiotech, xkoto, Xsigo Systems, Zenith Optemedia, Zeus Technology.