Macintosh құралдар жинағы - Macintosh Toolbox

The Macintosh құралдар жинағы көптеген жоғары деңгейлік ерекшеліктерін жүзеге асырады Классикалық Mac OS жиынтығын қоса бағдарламалық интерфейстер платформада бағдарламалық жасақтама жасауға арналған. Құралдар жинағы бірқатар «менеджерлерден», мысалы, бағдарламалық жасақтамадан тұрады QuickDraw, экрандағы графиканы салуға жауапты және мәзір жолын сипаттайтын мәліметтер құрылымын қолдайтын меню менеджері. Ретінде түпнұсқа Macintosh онсыз жасалған виртуалды жад немесе жадты қорғау, кодты жадқа не дискіде сақтауға болатындығына және оған қалай қол жеткізуге болатындығына қарай жіктеу маңызды болды. Құралдар тақтасы жадында тұрақты сақталатын және екі байтпен қол жетімді болатын ішкі бағдарламалардан тұрады машина нұсқаулығы; дегенмен ол негізгі «ядро» функционалдығын жоққа шығарады жадыны басқару және файлдық жүйе. Құралдар жинағы жоқ екенін ескеріңіз сурет салу экрандағы мәзір: мәзірлер өзгертілген түрге ие болу үшін жасалған, сондықтан сурет коды а-да сақталған ресурс дискіде болуы мүмкін.

Келу және іске асыру

68k жүйелерінде

Түпнұсқа Motorola 68000 отбасы Macintosh операциялық жүйесін енгізу жүзеге асырылады жүйелік қоңыраулар сол процессордың көмегімен заңсыз опкод ерекше жағдайларды өңдеу механизм. Motorola осы нұсқаулықтан басталатынын көрсетті 1111 және 1010 болашақта 68000 отбасылық процессорларда ешқашан қолданылмайды, осылайша оларды операциялық жүйе қолдана алады. Әрі қарай, олардың әрқайсысы өздеріне арналған болды үзіліс векторы, заңсыз опкод өңдеушісінен бөлек. Қалай 1111 пайдалану үшін сақталған coсияқты процессорлар 68881 ФПУ, Apple таңдады 1010 (оналтылық A) операциялық жүйені шақырудың префиксі ретінде. Заңсыз нұсқаулықтармен жұмыс белгілі қақпанға түсіру, сондықтан бұл арнайы нұсқаулар шақырылды A-тұзақтар.[1] Процессор мұндай нұсқаулыққа тап болған кезде басқаруды операциялық жүйеге береді, ол тиісті тапсырманы қарап, оны орындайды. Бұл механизмнің екі артықшылығы болды:

  • Бұл ықшам бағдарламаларға әкеледі. Тек екеуі байт әдеттегі пайдалану кезінде төрт-алтыдан айырмашылығы, әр амалдық жүйеге қол жетімділік арқылы қабылданады секіру нұсқаулары.
  • Сәйкес функцияны іздеуге арналған кесте жедел жадта сақталады. Содан кейін, егер негізгі код ROM-да сақталған болса да, оны жоққа шығаруға болады (жамау ) ROM ауыстыру арқылы жад мекен-жайы жедел жады мекен-жайы бар.

Жүйе сақтауға A-trap нұсқаулығының кейбір биттерін бөлу арқылы оңтайландырылды параметрлері ең кең таралған функцияларға дейін. Мысалға, жадыны бөлу өте кең таралған міндет, сондықтан оны мүмкіндігінше аз байт кодпен көрсету керек. Кейде бағдарламалаушы жад блогын нөлдерден тазартқысы келеді, сондықтан бөлу функциясы да қабылдауы керек логикалық параметр немесе екі бөлу функциясы болуы керек. Параметрді беру үшін қосымша екі байтты нұсқаулық қажет болады, бұл тиімсіз болады. Екі функцияға ие болу үшін функцияны іздеу кестесінде адрес үшін қосымша төрт байт жедел жады қажет болады. Ең тиімді шешім - бірнеше подтокинге бірнеше А-тұзақтарын бейнелеу, содан кейін параметр ретінде А-тұзағын қолданады. Бұл ең жиі қолданылатын ішкі бағдарламаларға қатысты. Алайда, Құралдар жинағы Аздау жиі қолданылатын ішкі бағдарламалар. Құралдар жинағы А-қақпанында ешқандай параметр қабылдамайтын және 1024 жазба, 4 килобайттан индекстелген ішкі бағдарламалардың жиынтығы ретінде анықталды. диспетчерлік кесте.[2] (Бір мегабайттан аз оперативті жадымен жіберілген машиналарда 512 жазбадан тұратын бір кесте қолданылады, бұл кейінірек ROM қайта қараудың 256 кірісті ОЖ диспетчерлік кестесіне сәйкес келеді.[3])

PowerPC жүйелерінде

1994 жылы Apple компаниясы Macintoshes-ті PowerPC 68к жүйелерінде қол жетімді A-trap механизмі үшін аппараттық қолдау жоқ архитектура. Бағдарламалық жасақтаманы қолдану кезінде оларды қолданғандықтан, диспетчерлік кестелер сақталды. Кез-келген Toolbox күнделікті жұмысының негізіндегі API кітапханасының коды диспетчерлік кестеге сілтеме жасаудан басқа ешнәрсе істемейді. Диспетчерлік кесте тек эмуляцияланған 68000 отбасы кодына байланысты. PowerPC кодында орындалатын құралдар жинағы функциялары алдымен аралас режим менеджері арқылы эмуляторды өшіруі керек. Біртектілік пен кеңею үшін PowerPC ауысқаннан кейін Toolbox-қа жаңа функция жазбалары қосыла берді.

Балама тетік, алайда, жергілікті PowerPC бағдарламаларын жүктеу және динамикалық байланыстыру үшін пайдаланылған Code Fragment Manager бағдарламасында болған. PowerPC жүйесімен шақыру қондырғысы, A-trap механизміне ұқсас, интерфейс үшін пайдаланылды Mac OS нанокернелі қосымшаларға тікелей пайдалы бірнеше қызметтерді ұсынды.

Функционалдылық

Интерфейстерді бағдарламалау

Құралдар жинағы жиі қолданылатын функциялардан тұрады, бірақ емес ең жиі қолданылатын функциялар. Нәтижесінде, ол әртүрлі API-нің қожайыны болып өсті кітапханалар.[3] Құралдар жинағы классикалық Mac ОЖ-ны ерекшелейтін негізгі функционалдылықтың көп бөлігін қамтиды. Apple-дің «Inside Macintosh: Macintosh Toolbox Essentials» және «In Macintosh: More Macintosh Toolbox» сілтемелері, сондай-ақ ауқымы жағынан түсініксіз, сонымен қатар Toolbox-тың көп бөлігін құжаттайды.

Жүктеу кезінде қолданыңыз

Себебі құралдар тақтасының көп бөлігі компьютермен қатар ROM-да орындалады микробағдарлама, ретінде пайдалану ыңғайлы болды жүктеуші қоршаған орта. Бірге ресурстар ROM чипінде сақталған Құралдар терезесі экранды сұр түске бояй алады, «Macintosh-қа қош келдіңіз» құттықтауы бар диалогтық терезені көрсетіп, тышқан курсорын көрсете алады. Құрылғыны іске қосуға көмектесетін құралдар жинағы көмегімен Mac-қа ұқсас қарапайым ортаны жүктеу алдында инициализациялауға болады Жүйелік чемодан дискіден (шын мәнінде NuBus карталарындағы ROM-дың орындалуына дейін), дәл осы кезде 24 биттік немесе 32 биттік адресацияны қолдану туралы шешім қабылдануы керек. (System 7-дің 32 биттік адресті қолдауы қажет 32 биттік таза ROM, өйткені ескі Mac ROM-да бұған қолдау жоқ). Диагностиканың қажеттілігі BIOS үшін резидент IBM PC үйлесімдері 'тақталар қажет емес, өйткені Macintosh-та диагностиканың көп бөлігі бар ПОСТ және қателер туралы автоматты түрде «Қайғылы Mac «кодтары.

Жүктеу ортасы мен нақты амалдық жүйенің ұқсастығын бірдей деп шатастыруға болмайды. «Классикалық Mac OS» жүктеу процедурасы қисайған және негізінен құжатсыз болғанымен, ол тек an шектелген емес IBM PC үйлесімді BIOS. ДК сияқты негізгі жүктеу жазбасы, ROM-қа негізделген Mac-тың бірінші блоктарынан («жүктеу блоктарынан») кодты оқиды және орындайды диск бөлімі ретінде таңдалған жүктеу құрылғысы. Содан кейін жүктеу блоктары сәйкес келетін қарапайым орта бар екенін тексеріп, оны жүйелік чемоданға салу үшін пайдаланады. Басқа операциялық жүйе файлдық жүйе жүктеу блоктарында тек өзінің кодын қолдану арқылы жүктей алады.[4] Бұл жүйе PowerPC Linux үшін пайдаланылмаған, себебі Микробағдарламаны ашыңыз жылы Жаңа әлем ROM машиналар үшін HFS файлдық жүйесі үшін жүктеуші қажет - бұл құралдар тақтасына немесе «ескі» Mac-қа мүлдем қатысы жоқ. Нақтырақ айтқанда, классикалық Mac OS және macOS жүйесіндегі Startup Disk басқару тақтасы пайдаланушыға тек белгілі шектеулермен орнатылған файлдық жүйені таңдауға мүмкіндік береді.

Мұра

Жылы Mac OS X, құралдар тақтасы мүлдем пайдаланылмайды, дегенмен Классикалық орта Toolbox ROM файлын виртуалды машинасына жүктейді. Құралдар тақтасының көп бөлігі Apple-дің бөлігі ретінде қайта құрылды және іске асырылды Көміртегі Бағдарламашыларға құралдар тақтасын жақсы білетін бағдарламалау API порт олардың бағдарлама коды Mac OS X-ге оңай.

Сондай-ақ қараңыз

Әдебиеттер тізімі

  1. ^ Apple Inc. (6 шілде 1996 ж.). «A-Line нұсқаулары». Архивтелген түпнұсқа 2004-07-02. Alt URL
  2. ^ Apple Inc. (6 шілде 1996 ж.). «Қақпан менеджері туралы». Архивтелген түпнұсқа 2004-07-02. Alt URL
  3. ^ а б Олсон, Джеймс Х (4 қыркүйек 1997). «Mac Alamanac II». Macintosh үшін Linux / m68k.
  4. ^ Apple Inc. (6 шілде 1996 ж.). «Жүктеу блоктары». Архивтелген түпнұсқа 2004-03-12. Alt URL

Сыртқы сілтемелер