Extension conflict

Extension conflict

Extension conflicts were sometimes a problem on Apple Macintosh computers running versions of Mac OS prior to X, especially System 7. Extensions were bundles of code that extended the operating system's capabilities by directly patching OS calls, thus receiving control instead of the operating system when applications (including the Finder) made system calls. Generally, once an extension had done what it wanted, it was supposed to pass on the (possibly modified) system call to the operating system's routine. If multiple extensions want to patch the same system call, they end up receiving the call in a chain, the first extension in line passing it on to the next, and so on, until the last extension passes to the operating system. If an extension doesn't hand the next extension in line what it is expecting, bad things result, ranging from unexpected behavior to full system crashes.

In addition, extensions sometimes competed for system resources with applications, utilities and other extensions, leading to crashes and general instability. The public perception of extension conflicts was a major factor in the Mac OS's reputation for instability before the Unix-based OS X was released.

The problem of extension conflicts shouldn't be over-emphasized. Many users happily loaded every extension they could find on their computer, with little or no impact. Others fastidiously avoided any non-essential extensions as a way of avoiding the problem. Others were judicious in the addition of extensions.

This problem became more serious through the mid-1990s as resource-hungry multimedia technologies such as QuickTime were installed as extensions. In addition, a number of applications, especially Microsoft Office, required a large number of extensions. Many Macintosh users had hundreds of extensions running on their systems, all of varying age and quality. Buggy, damaged and outdated extensions were the most common cause of problems. Some users had to remember to turn off problematic extensions when running certain programs.

Later versions of System 7 included the Extensions Manager, which allowed users to turn off specific extensions or groups of extensions at startup. Conflict Catcher, a third party utility, automatically detected conflicts and problematic extensions, otherwise a time-consuming task that required users to turn off extensions in sets until they found the conflict. Extensions were only loaded at startup time, meaning that any attempted change required a reboot.

The most common time for extension conflicts to start was the release of a new version of the operating system, followed closely by the installation of a new application that either conflicted with existing extensions, or installed extensions that conflicted with the existing set.

All of this was mitigated by the ease with which extensions and the operating system itself could be swapped in and out: Instead of modifying configuration files as on other operating systems, extensions simply had to reside in a particular folder to be picked up. In addition, the Mac was perfectly happy to have two (or more) system folders present on a hard drive. Only the "blessed" system folder would be loaded at startup. So, when a new version of the operating system was to be installed, or a new application, the user could easily duplicate the system folder, perform the install, and then fall back if a problem resulted.

Extension conflicts came to an end with the release of Mac OS X, which uses a different extension mechanism.

See also

* Configuration management
* Dependency management
* DLL hell

External links

* [http://www.drmac.net/tips/resolve_ec.html How to resolve an extension conflict]


Wikimedia Foundation. 2010.

Игры ⚽ Нужен реферат?

Look at other dictionaries:

  • Conflict Catcher — 9 running on Mac OS 9. Developer(s) Casady Greene Stabl …   Wikipedia

  • Extension (Mac OS) — On the Apple Macintosh operating system prior to Mac OS X, extensions were small pieces of code that extended the system s functionality. They were run initially at start up time, and operated by a variety of mechanisms, including trap patching… …   Wikipedia

  • Conflict resolution — Psychology …   Wikipedia

  • Conflict between good and evil — The conflict between good and evil is one of the precepts of the Zoroastrian faith, first enshrined by Zarathustra over 3000 years ago. It is also one of the most common conventional themes in literature, and is sometimes considered to be a… …   Wikipedia

  • Conflict: FreeSpace — Descent: FreeSpace Descent: FreeSpace – The Great War Éditeur Interplay Entertainment Développeur Volition, Inc. Date de sortie …   Wikipédia en Français

  • Extension method — An extension method is a new language feature of C# starting with the 3.0 specification, as well as Visual Basic.NET starting with 9.0 and Oxygene with 2.0.The problemNormally, in a situation where it is necessary to add more functionality to a… …   Wikipedia

  • World in conflict — Éditeur Sierra Entertainment Développeur Massive Entertainment Date de sortie 18 septembre 2007 (États Unis) 21 septembre 2007 (France) Genre …   Wikipédia en Français

  • World in Conflict — Éditeur Sierra Entertainment Développeur Massive Entertainment Date de sortie 18 septembre 2007 (États Unis) 21 septembre 2007 (France) Genre …   Wikipédia en Français

  • World in Conflict : Soviet Assault — World in Conflict: Soviet Assault World in Conflict: Soviet Assault est une extension (ou add on) pour le jeu vidéo de stratégie en temps réel World in Conflict, développée par Massive Entertainment et éditée par Ubisoft. Le titre est sorti… …   Wikipédia en Français

  • Israeli-Palestinian conflict in Hebron — The Israeli Palestinian conflict in Hebron is a microcosm of the wider Israeli Palestinian conflict. The conflict in Hebron is being played out in a city of 160,000 Palestinians and a Israeli settler population of 500 800 living in close… …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”