Sehemu kuu za familia ya Windows NT ya mifumo ya uendeshaji. Maelezo mafupi ya mfumo wa uendeshaji wa Windows NT. Mahitaji ya vifaa

Mwishoni mwa 1988, Microsoft ilimteua David Cutler kuongoza mradi mpya katika programu: tengeneza mfumo mpya wa uendeshaji wa Microsoft wa miaka ya 1990. Alikusanya timu ya wahandisi ili kuendeleza mfumo huo teknolojia mpya(Teknolojia Mpya - NT).

Mpango asilia ulikuwa ni kutengeneza NT yenye violesura vya watumiaji wa mfumo wa OS/2 na violesura vya programu (API), lakini OS/2 iliuzwa vibaya na Windows 3.0 ilikuwa mafanikio makubwa na yanayoendelea sokoni. Baada ya kuona shinikizo la soko na changamoto zinazohusiana na kuunda na kusaidia mifumo miwili isiyooana, Microsoft iliamua kubadilisha mkondo na kuwaelekeza wahandisi wake kuelekea mkakati mmoja wa mfumo wa uendeshaji. Mkakati huu ulikuwa ni kuendeleza familia ya mifumo ya uendeshaji yenye msingi wa Windows ambayo ingeshughulikia aina nyingi za kompyuta, kutoka kompyuta ndogo ndogo hadi vituo vingi vya kazi vya multiprocessor. Kwa hivyo, kizazi kijacho cha mifumo ya Windows kiliitwa Windows NT.

Windows NT inasaidia kiolesura cha picha cha Windows (GUI) na pia ni ya kwanza kutegemea Mfumo wa uendeshaji wa Windows mfumo wa Microsoft unaoauni Win32 API, kiolesura cha programu cha 32-bit cha kutengeneza programu mpya. Win32 API hufanya kupatikana kwa programu vipengele vya juu vya mfumo wa uendeshaji kama vile michakato yenye nyuzi nyingi, maingiliano, usalama, I/O, na usimamizi wa kitu.

Mnamo Julai 1993, mifumo ya kwanza ya uendeshaji ya familia ya NT ilionekana - Windows NT 3.1 na Windows NT Advanced Server 3.1.

Matoleo

  • Windows NT 3.1 (Julai 27, 1993)
  • Windows NT 3.5 (Septemba 21, 1994)
  • Windows NT 3.51 (Mei 30, 1995)
  • Windows NT 4.0 (Agosti 24, 1996)
  • Windows 2000 (Februari 17, 2000)
  • Windows XP (Oktoba 25, 2001)
  • Toleo la Windows XP 64-bit (Machi 28, 2003)
  • Windows Server 2003 (Aprili 25, 2003)
  • Toleo la Windows XP Media Center 2003 (Desemba 18, 2003)
  • Toleo la Windows XP Media Center 2005 (Oktoba 12, 2004)
  • Toleo la Windows XP Professional x64 (Aprili 25, 2005)
  • Misingi ya Windows kwa Kompyuta za Urithi (Julai 8, 2006)
  • Windows Vista (Novemba 30, 2006)
  • Seva ya Nyumbani ya Windows (Novemba 7, 2007)
  • Windows Server 2008 (Februari 27, 2008)

Muundo wa Windows NT

Kimuundo, Windows NT inaweza kuwakilishwa katika sehemu mbili: sehemu ya mfumo wa uendeshaji unaoendesha katika hali ya mtumiaji, na sehemu ya mfumo wa uendeshaji unaoendesha katika hali ya kernel.

Sehemu ya Windows NT inayoendesha katika hali ya kernel inaitwa sehemu ya mtendaji. Inajumuisha idadi ya vipengele vinavyodhibiti kumbukumbu halisi, vitu (rasilimali), pembejeo/pato na mfumo wa faili (pamoja na viendesha mtandao), mwingiliano wa mchakato na kwa sehemu mfumo wa usalama. Vipengele hivi vinaingiliana kwa kutumia mawasiliano kati ya moduli. Kila sehemu huita zingine kwa kutumia seti ya taratibu za ndani zilizoainishwa kwa uangalifu.

Sehemu ya pili ya Windows NT, inayofanya kazi katika hali ya mtumiaji, ina seva - kinachojulikana kama mfumo mdogo wa ulinzi. Kwa kuwa mifumo ndogo haiwezi kushiriki kumbukumbu kiotomatiki, huwasiliana kwa kutuma ujumbe. Ujumbe unaweza kutumwa kati ya mteja na seva, na kati ya seva mbili. Ujumbe wote hupitia mtendaji wa Windows NT. Windows kernel NT hupanga nyuzi katika mifumo ndogo iliyolindwa kwa njia sawa na nyuzi katika michakato ya kawaida ya utumaji.

Msaada kwa mifumo ndogo iliyolindwa hutolewa na sehemu ya utendaji. Vipengele vyake ni:

  • Msimamizi wa kitu. Huunda, kufuta na kudhibiti vipengee vya wakati wa utekelezaji—aina za data dhahania zinazotumiwa kuwakilisha rasilimali za mfumo.
  • Mfuatiliaji wa usalama. Inaweka sheria za ulinzi kwenye kompyuta ya ndani. Inalinda rasilimali za mfumo wa uendeshaji, inalinda na kusajili vitu vinavyoweza kutekelezwa.
  • Msimamizi wa mchakato. Huunda na kukomesha, kusimamisha na kurejesha michakato na nyuzi, na pia huhifadhi habari kuzihusu.

Kidhibiti cha kumbukumbu halisi.

  • Mfumo mdogo wa I/O. Inajumuisha vipengele vifuatavyo:
    • meneja wa I/O ambaye hutoa vifaa vya I/O vinavyojitegemea vya kifaa;
    • mifumo ya faili - madereva ya NT ambayo hufanya maombi ya I/O yenye mwelekeo wa faili na kutafsiri kuwa simu kwa vifaa vya kawaida;
    • redirector ya mtandao na seva ya mtandao - madereva ya mfumo wa faili ambayo huhamisha maombi ya mbali kwa pembejeo / pato kwa mashine za mtandao na kupokea maombi kutoka kwao;
    • madereva ya kifaa cha mtendaji - madereva ya kiwango cha chini ambayo hudhibiti kifaa moja kwa moja;
    • meneja wa kache anayetumia uhifadhi wa diski.

Sehemu ya utekelezaji, kwa upande wake, inategemea huduma za kiwango cha chini zinazotolewa na NT kernel. Kazi za Kernel ni pamoja na:

  • kupanga mchakato,
  • kushughulikia usumbufu na isipokuwa,
  • maingiliano ya processor kwa mifumo mingi ya usindikaji,
  • kurejesha mfumo baada ya kushindwa.

Kernel huendesha katika hali ya upendeleo na haiondolewa kamwe kutoka kwa kumbukumbu. Kokwa inaweza kufikiwa tu kupitia kukatiza.

Imelindwa chini ya Mifumo ya Windows Faili za NT zinaendesha katika hali ya mtumiaji na zinaundwa na Windows NT wakati mfumo wa uendeshaji unapoanza. Mara baada ya uumbaji wanaanza mzunguko usio na mwisho utekelezaji wao kwa kujibu ujumbe unaokuja kwao kutoka kwa michakato ya maombi na mifumo mingine midogo. Kati ya mifumo ndogo iliyolindwa, aina ndogo inaweza kutofautishwa inayoitwa mifumo ndogo ya mazingira. Mifumo midogo ya mazingira hutekeleza miingiliano ya programu endeshi (APIs). Aina zingine za mifumo ndogo, inayoitwa mifumo ndogo ndogo, hufanya kazi zinazohitajika na mfumo wa uendeshaji. Kwa mfano, wengi wa mfumo Usalama wa Windows NT inatekelezwa kama mfumo mdogo, seva za mtandao pia zinatekelezwa kama mifumo ndogo muhimu.

Mfumo mdogo muhimu zaidi wa mazingira ni Win32, mfumo mdogo ambao hutoa ufikiaji wa programu kwa API ya Windows 32-bit. Zaidi ya hayo, mfumo huu hutoa kiolesura cha kielelezo na hudhibiti pembejeo/pato la mtumiaji.

Kila mfumo mdogo uliolindwa hufanya kazi katika hali ya mtumiaji, kupiga simu huduma ya mfumo sehemu ya mtendaji kufanya vitendo vya upendeleo katika hali ya kernel. Seva za mtandao inaweza kukimbia katika hali ya mtumiaji au modi ya kernel, kulingana na jinsi imeundwa.

Mifumo midogo huwasiliana kwa kupitisha ujumbe. Wakati, kwa mfano, maombi maalum huita utaratibu fulani wa API, mfumo mdogo wa mazingira ambao hutoa utaratibu huu hupokea ujumbe na kuutekeleza ama kwa kupata kernel au kwa kutuma ujumbe kwa mfumo mwingine mdogo. Baada ya utaratibu kukamilika, mfumo mdogo wa mazingira hutuma ujumbe kwa programu iliyo na thamani ya kurudi. Kutuma ujumbe na shughuli zingine za mifumo ndogo iliyolindwa haionekani kwa mtumiaji.

Zana kuu inayoshikilia mifumo yote midogo ya Windows NT pamoja ni utaratibu wa Simu ya Utaratibu wa Ndani (LPC). LPC ni toleo lililoboreshwa la zana ya jumla zaidi, simu ya utaratibu wa mbali (RPC), ambayo hutumiwa kuwasiliana kati ya wateja na seva zilizo kwenye mashine tofauti kwenye mtandao.

Mizizi

Yote ilianza mnamo 1975, wakati Shirika la Vifaa vya Dijiti lilipoanzisha uundaji wa jukwaa lake la 32-bit VAX.

Uongozi wa mradi huu ulikabidhiwa kwa Cutler, ambaye tayari alikuwa amepata sifa kama mhandisi wa mifumo dhabiti kwa kuunda RSX-11M kwa kompyuta ndogo maarufu za PDP-11. Mnamo 1977, mashine ya VAX-11/780 na mfumo wa uendeshaji kwa hiyo, VMS 1.0, ilitangazwa. Miaka minne baadaye, Cutler alichoka sana na "kuandika" nambari baada ya kiambishi awali cha herufi tatu, na aliamua kuondoka Digital. Walakini, watendaji wa shirika waligeuka kuwa wajanja zaidi: kwa kuwa hawakuweza kuweka msanidi programu mwenye talanta kifuani mwa shirika, waliamua kuiga mazingira ya kuanza na ubunifu wa bure. Mgawanyiko wa uhuru uliundwa huko Seattle, na Cutler aliruhusiwa kuajiri idadi inayohitajika ya wafanyikazi (karibu watu 200) moja kwa moja kutoka kwa wafanyikazi wa Dijiti. Muundo mpya alianza kubuni usanifu wa processor na mfumo wa uendeshaji uliopewa jina la Prism.

Mchoro wa maendeleo ya mifumo ya uendeshaji ya familia ya Windows NT

"Wakati wa furaha" haukuchukua muda mrefu; wakubwa wakubwa hawakuweza kuleta kazi waliyoianza kwa hitimisho lake la kimantiki, na mnamo 1988, Cutler, pamoja na wahandisi wake 200 na watengeneza programu, walijikuta huru kupata riziki yake. Lakini msanidi programu maarufu hakubaki nje ya kazi: wakati huo, uamuzi ulikuwa umeiva katika kichwa cha Bill Gates kuhusu hitaji la kuunda OS ya seva ambayo ingeshindana na clones za Unix. Ili tu kumpata David Cutler, mbunifu mkuu wa baadaye wa Microsoft alikubali kuajiri wahandisi 20 wa zamani wa Digital wa chaguo lake. Mnamo Novemba 1988, timu iliyojumuisha watu watano kutoka Digital na programu moja ya Microsoft ilianza biashara.

Kazi ilikuwa kuandika OS kwa processor mpya ya Intel i860 RISC, iliyopewa jina la N-Ten. Hapa, kwa njia, ndipo kifupi NT kilitoka, ambacho baadaye kilitafsiriwa na wauzaji wa Microsoft kama Teknolojia Mpya. Tayari mnamo Desemba 1988, vipande vya kwanza vya mfumo vilikuwa tayari. Kukamata ni kwamba i860 ilikuwepo kwenye karatasi tu, kwa hivyo msimbo ulipaswa kujaribiwa kwenye emulator ya programu. Maendeleo yalifanywa kwa mifano ya "toy", kwa viwango vya leo, Mashine za Intel 386 25 MHz na 13 MB RAM na anatoa ngumu 110 MB.

Usanifu wa microkernel, ambayo hapo awali ilikuwa msingi wa NT, ikawa muhimu wakati mnamo 1989 iligunduliwa kuwa vifaa vya i860 havikuwa na uwezo wa kutekeleza nambari iliyoandikwa kwa ufanisi wa kutosha. Ilitubidi kubadili hadi MIPS R3000 na kisha kwa kichakataji cha kawaida cha Intel 386, ambacho kilifanywa chini ya mwaka mmoja na timu iliyokua na wahandisi 28.

Mnamo 1990, tukio muhimu zaidi lilifanyika, ambalo likawa muhimu katika hatima ya NT - kutolewa na mafanikio ya kizunguzungu ya Windows 3.0. Kwa kweli, ilikuwa ni Mfumo wa Uendeshaji wa kazi nyingi wa kwanza wa Microsoft na kiolesura kizuri cha picha ambamo kufanya kazi halisi. Ilikuwa ni ukopaji wa kiolesura hiki na API ulioamua mapema mustakabali wa NT. Hapo awali, mfumo wa uendeshaji wa seva ulitakiwa kuwa urekebishaji wa mradi wa OS/2 kwa pamoja na IBM na, ipasavyo, kufanya kazi na maombi yaliyopo Mfumo wa Uendeshaji/2. Walakini, toleo la tatu la Windows lilionekana kwa wakati unaofaa: Redmond aliwaacha washirika wake na akaelekeza tena timu ya ukuzaji ya NT kuunda Win32 API, iliyotengenezwa kwa "picha na mfano" wa kiolesura cha Win16. Hii ilitoa mwendelezo uliohitajika sana, na kuifanya iwe rahisi kuhamisha programu kutoka kwa eneo-kazi hadi kwa jukwaa la seva.

Kikundi cha maendeleo cha NT, ambacho kwa wakati huo kilikuwa Windows NT, kilianza kukua haraka, na hivi karibuni kiliajiri watu wapatao 300. Kushindwa kuzingatia OS/2 kulisababisha matatizo makubwa katika uhusiano kati ya Microsoft na IBM. Taarifa rasmi hakuna kilichoripotiwa, ni kwamba tu katika moja ya maonyesho ya kati ya makampuni, wafanyakazi wa IBM waligundua kwa kuchanganyikiwa kwamba OS iliyoundwa haikuwa na uhusiano wowote na ubongo wa kampuni yao. Hata hivyo, Windows NT 3.1 (nambari "ilirekebishwa" kwa toleo la sasa la Windows 16-bit lililokuwepo wakati huo) ilijumuisha usaidizi wa DOS, Win16, POSIX na OS/2 API, kati ya zingine. Mnamo Julai 1993, mfumo mpya wa seva wa Microsoft ulitoka na kuanza safari yake.

Kisha mambo yalikwenda vizuri: mnamo Septemba 1994, Windows NT 3.5 ilitolewa. Toleo la awali liliandaliwa kwa kasi ya homa, kila kitu kilipaswa kuandikwa kutoka mwanzo, na vipengele vingi viliachwa bila kutekelezwa. Sasa ni wakati wa kufikiria juu ya ufanisi, kasi na ... kuandaa aina fulani ya mwingiliano na mitandao iliyojengwa kwenye NetWare - kiongozi kamili wa wakati huo, akitawala soko. mitandao ya ndani. Ikiwa katika miaka hiyo wangekuwa makini sana na masuala ya kudhibiti ukiritimba kama ilivyo leo, labda ingetosha kuandika kashfa inayolingana na hiyo kwa mamlaka husika. Kwa bahati mbaya, Microsoft ililazimika kujua hali hiyo peke yake. Novell alisitasita kuhusu kutoa au kutotoa usaidizi wa mteja kwa Windows NT. Redmond hakuweza kusubiri tena - waliandika yao wenyewe Mteja wa NetWare, na ilikuwa nzuri sana hivi kwamba iliendelea kutumika baada ya programu asilia ya Novell kutolewa. Mnamo Mei 1995, shukrani kwa usanifu kulingana na microkernel, toleo maalum la "PowerPC" la OS lilionekana - Windows NT 3.51. Kulingana na ripoti zingine, kutolewa kwake kulicheleweshwa kwa wakati mmoja kwa sababu ya kutoweza kwa IBM kuzingatia mpango wa kuleta processor hii sokoni. Kwa hiyo, mageuzi ya toleo la PowerPC lilikwenda kidogo zaidi kuliko Windows NT 3.5, ambayo iliruhusu kuwa msingi wa toleo la pili la OS.

Ikiwa hadi sasa bado ilikuwa inawezekana kuzungumza juu ya kufanana kati ya usanifu wa Windows NT na hata Unix (kwa njia fulani mbali sana, na kwa wengine sawa na VMS OS), basi kwa kutolewa kwa NT 4.0, ambayo ilianzisha mfumo mdogo wa graphics kuwa msingi, sababu ya mwisho ya hoja kama hiyo imetoweka. Kwa nadharia, uamuzi kama huo ulikuwa hitimisho la kimantiki kabisa kutoka kwa uzoefu wa kusikitisha wa kujaribu kuunganisha mazingira maarufu ya windows 95 kwenye NT. Labda, wazo la kuiga mfano wa usanifu wa X Window - Unix - liliibuka kwa sababu. ya "mwelekeo wa seva" ya awali ya NT. Walakini, ikiwa hapakuwa na shida na "kupandikiza" halisi kwa ganda la picha, basi utendaji wake katika hali ya mtumiaji (yaani, katika fomu. maombi ya kawaida) imeacha kuhitajika, ambayo ni ya asili kabisa - mfumo mdogo wa picha wa Windows unaounga mkono kifaa cha pato kilichotolewa (iwe onyesho la raster, kichapishi, au kitu chochote kabisa) ni ngumu zaidi na, ipasavyo, inayohitaji rasilimali zaidi kuliko X. Dirisha, ambalo "linaelewa" maonyesho ya raster pekee. Kwa hivyo, moduli nyingine ilionekana kama sehemu ya Windows NT 4.0 kernel, iliyotolewa mnamo Julai 1996. Marekebisho hayo yaliitwa Kutolewa kwa Sasisho la Shell (SUR).

Hatua inayofuata ilikuwa Windows NT 5.0, iliyotolewa kwenye soko mwaka 2000 chini ya jina Windows 2000. Mabadiliko ya "majina" yalitokea chini ya ushawishi wa wauzaji na ikawa, kwa ujumla, uamuzi sahihi, ambao ulifanya iwezekanavyo. kuweka upya mfumo huu wa uendeshaji. Kazi inaendelea hadi leo, kama inavyothibitishwa na kutolewa Seva ya Windows 2003.

Vita kwa ajili ya Ubunifu wa Windows na Utekelezaji wa Windows Seva inaripoti kwa Mark Lucovsky, mmoja wa wafuasi wa kitengo cha mfumo wa uendeshaji wa seva ya shirika. Anaongoza jeshi la watengenezaji elfu 5 waliopewa maabara saba. Watayarishaji programu wengine elfu 5 hufanya kazi katika maeneo yao ya kazi katika kampuni za washirika, wakichangia kila siku kwa laini milioni 50 za nambari za mwisho katika Windows Server 2003.

Kila siku, mkusanyiko kamili na mkusanyiko wa mfumo unafanywa ili kuangalia utendaji na kutambua makosa. Orodha ya makosa yaliyotambuliwa hutumwa kwa timu za maendeleo. Marekebisho yaliyofanywa lazima yaripotiwe kwenye ubao wa matangazo, ambayo huwaweka kwenye foleni ya kuingizwa kwenye jengo kuu. Shamba la seva ambalo linaunda mfumo linasasishwa kila wakati, hata hivyo, kama miaka mingi iliyopita, mkusanyiko kamili inachukua saa 12 za muda wa kompyuta. Na hii ni licha ya mgawanyiko wa safu kubwa ya misimbo katika vikundi tofauti huru vya misimbo ya chanzo, iliyopangwa katika safu zinazofanana na mti.

Kiini cha mchakato wa maendeleo ni mikutano ya saa moja katika kile kinachoitwa "chumba cha vita", kinachofanyika mara mbili au tatu kila siku (saa 9:30, 14:00 na 17:00). Wanatanguliwa na matukio sawa katika "vyumba vya vita" vya mitaa vya vikundi vya kufanya kazi saa 8.00. Katika mkutano mkuu, marekebisho ya makosa yaliyogunduliwa hapo awali yanajadiliwa na hali ya jumla ya mradi imedhamiriwa. Katika siku za hivi karibuni, watu hapa wamekuwa wakitafuta njia za kutatua tatizo muhimu - kubadilisha jina la Windows.NET Server 2003 hadi Windows Server 2003. Maelfu ya majina katika modules mbalimbali, na hii ilikuwa wakati wa mwisho kabla ya mfumo kutolewa, ambayo ilisababisha maumivu ya kichwa makubwa kwa watengenezaji.

Katika mkutano huo, kila timu inapaswa kuripoti maendeleo ya kazi yake, mchakato wa kurekebisha makosa yoyote yanayopatikana, na matokeo yanayoweza kutokea ya kufanya au kutofanya marekebisho haya. Ikiwa tatizo haliwezi kutatuliwa au linachukuliwa kuwa si muhimu vya kutosha, mdudu, kwa mujibu wa istilahi ya awali, "hutolewa" kwenye toleo la mwisho. Kukosa mkutano wa asubuhi ni sawa na kutoroka.

Ujenzi huanza kila siku saa 4:30 asubuhi na unaweza kucheleweshwa hadi 6:00 p.m. ili kuruhusu marekebisho ya hivi punde zaidi kujumuishwa kwenye mfumo baada ya mkutano wa tatu wa vita. Timu haiwezi kuja kwenye mkutano bila suluhisho tayari matatizo yaliyopo, la sivyo ni bora wasijitokeze kabisa. Kila moja ya maabara saba ina nakala kamili ya msimbo wa chanzo wa mfumo, ambayo hufanya marekebisho yao, kukusanya na kupima utendaji. Ikiwa kila kitu kilikwenda vizuri, msimbo mpya umeunganishwa na msimbo ulioundwa na vikundi vingine kwenye mkusanyiko mkuu. Shida inaweza kuwa mwingiliano wa nambari mpya iliyoandikwa na vikundi tofauti. Mkutano mkuu hauendi vizuri kila wakati; wakati mwingine mfumo unageuka kuwa hauwezekani. Katika kesi hii, mara tu moduli ya hatia inapogunduliwa (kawaida karibu saa tatu au nne asubuhi), wale walioiandika wanaitwa haraka mahali pa kazi na usiondoke mpaka kosa lirekebishwe. Kwa hivyo, watayarishaji programu lazima wawe tayari kufanya kazi masaa 24 kwa siku, siku 6 kwa wiki (siku sita huletwa wakati tarehe ya kutolewa kwa bidhaa inakaribia).

Kanuni kuu ambayo hatua za mwisho za kupima zinajengwa ni matumizi ya bidhaa zetu wenyewe katika mchakato wa mradi. Mara tu mfumo unapofikia utulivu wa "ngazi ya kwanza", inakuwa OS ya msingi katika vikundi vya kazi. "Ngazi ya pili" inachukuliwa kufikiwa wakati OS inapata uwezo wa kufanya kazi. Ni baada ya hii tu ndipo inaruhusiwa kutumika kwenye chuo cha Microsoft. Hivi ndivyo ilivyokuwa kwa seva ya faili chini ya NT, matumizi yake ya kwanza ilikuwa kuhifadhi misimbo ya chanzo cha Windows NT, hii ilifanyika na ya kwanza, na kwa wote waliofuata. Matoleo yanayotumika Orodha.

Kisha bidhaa huwasilishwa kwa washirika waliochaguliwa kupitia mpango wa JDP (Washirika wa Pamoja wa Maendeleo) kwa majaribio. Ikiwa makosa yatagunduliwa, "uamuzi wa hiari" hufanywa: waache kwenye mfumo na uhifadhi tarehe ya kuanza kwa mauzo, au uahirishe tarehe ya kutolewa na uanze kufanya maboresho. Katika kesi ya mwisho, matokeo yote yameghairiwa na majaribio huanza kutoka mwanzo.

Ni ngumu zaidi kutoa usaidizi baada ya mauzo. Ikiwa kasoro, mashimo ya usalama yanatambuliwa, au kuna haja ya kuongeza vitendaji vipya kwenye bidhaa, lazima uunde kiraka cha ndani au kamili. Kifurushi cha Huduma. Kwa kuwa zingine tayari zilikuwepo kabla ya kiraka hiki au Kifurushi cha Huduma, nambari mpya hujaribiwa kwa anuwai nyingi za mfumo, ikijaribu michanganyiko yote inayowezekana ya viraka na Pakiti za Huduma. Kwa kuongezea, ili kufanya ukaguzi kamili wa utendaji, shirika linaunga mkono vipande tofauti vya mtandao wake vinavyofanya kazi kwenye matoleo ya zamani ya bidhaa (kwa mfano, Windows Server 2000), ambapo unaweza "kujaribu" mfumo kwenye uwanja.

Jinsi VMS ikawa WNT

Baadhi ya akili wakati mmoja walitania kwamba ikiwa utafanya operesheni ya kuongeza (ongeza kwa moja) kwenye kila herufi ya jina la mfumo wa uendeshaji wa Cutler VMS, utapata WNT au Windows NT. Kulingana na wataalamu, hii ni ukweli kabisa. Sio maoni ya upendeleo kulingana na ukweli kwamba wasanifu wakuu wa NT walikuwa watengenezaji wa VMS wakati mmoja, lakini ukweli halisi.

Kwa kweli, NT ni mfano halisi wa mawazo ya usanifu yaliyosanifiwa kwa kiasi kikubwa ya msingi wa mkusanyiko wa VMS, unaotekelezwa katika lugha ya C ili kufikia uhamishaji bora, ukisaidiwa na API za kiolesura zinazolingana na mifumo midogo ya faili na michoro. Kawaida ya ufumbuzi wa usanifu wa mifumo miwili ni kubwa sana. Kwa hivyo, wana dhana sawa za michakato, vipaumbele (ngazi 32), usimamizi wa mabadiliko katika vipaumbele na udhibiti wa usambazaji wa muda wa processor kati yao. Lakini licha ya kufanana kwa kiasi kikubwa, bila shaka kutokana na uzoefu wa awali wa timu ya mbunifu mkuu - Cutler, NT iliundwa awali kama OS yenye nyuzi nyingi - tofauti hii "ndogo" inafanya iwezekanavyo kuelewa kiwango ambacho NT iko. kuondolewa kutoka kwa usanifu wa "msingi" wa VMS.

Madereva katika mifumo yote ya uendeshaji hufanya kazi ndani ya mfano wa stack, kila safu ambayo imetengwa kutoka kwa wengine, ambayo inakuwezesha kuandaa mpango wa usimamizi wa vifaa vya hatua nyingi. Mifumo huruhusu ubadilishanaji wa michakato ya mtumiaji na zile za mfumo, pamoja na viendeshaji. Njia za kuwakilisha rasilimali pia zinafanana; mifumo yote miwili inazichukulia kama vitu na kuzisimamia kwa kutumia Kidhibiti cha Kitu. Usalama wa NT, kama vile Orodha zake za msingi za Udhibiti wa Ufikiaji wa Hiari, au DACL, hufuatilia nasaba yake hadi VMS 4.0.

Mnamo 1993, wahandisi wa Dijiti walikagua vipimo vya Windows NT na kugundua ufanano wake wa kushangaza na Mica OS ya majaribio iliyoundwa kama sehemu ya mradi wa Prism. Kwa nini umakini kama huo kwa bidhaa za Redmond? Haikuwa kwa sababu ya maisha mazuri kwamba wafanyakazi wa Digital walianza kujifunza mambo ya ndani ya mfumo wa mtu mwingine. Mnamo 1992, shirika lilianguka kwenye dive ya muda mrefu, pesa zilikuwa zikipita kwenye vidole vyake, na mauzo ya kichakataji kipya cha Alpha yalisitishwa. Sasa, katika kutafuta wokovu, wakubwa wa kampuni hiyo walijaribu kurejea kwa mpinzani wake mkali Intel kwa msaada, ambayo rais wake, Andrew Grove, alikataa. Mwishowe ilibidi niiname kwa Gates III na kuuliza Windows bandari NT chini ya Alpha kwa kubadilishana na ahadi ya kufanya NT, kwa madhara ya VMS, mfumo wake mkuu wa uendeshaji. Walakini, baada ya kupokea toleo la awali la NT, wahandisi wa Dijiti waligundua polepole kuwa OS hii ilihitaji RAM zaidi kuliko "Kompyuta ya Alpha ya dola elfu tano" ingekuwa nayo. NT haikufaa kwa soko kubwa la vituo vya RISC; jaribio la kujiunga na bendera ya Microsoft kwa Digital (kama, kwa kweli, kwa kampuni zingine nyingi) liligeuka kuwa upotezaji wa muda na pesa.

Mchezo wa "tafuta tofauti 10" kati ya WNT na VMS ulileta faida kubwa kwa Digital. Kulingana na toleo moja lililochapishwa wakati huo katika Wiki ya Biashara, badala ya kufungua kesi waziwazi, rais wa Digital, akiwa na mikononi mwake ushahidi usiopingika wa ukiukaji wa haki miliki, aliamua kupata zaidi kwa kutumia kidogo. Aligeukia Microsoft kwa ufafanuzi, ambayo ilisababisha kusainiwa kwa mkataba mkubwa ambao Digital ikawa muunganisho mkuu wa mtandao wa NT. Kwa kuongezea, mnamo Oktoba ya mwaka huo huo, Redmond iliacha msaada kwa vichakataji vyote viwili vinavyoshindana na Alpha katika Windows NT: PowerPC na MIPS. Kwa bahati mbaya kwa usimamizi wa Dijiti, muungano uliharibiwa hivi karibuni, na hali ya "huduma za usakinishaji wa mtandao wa NT kwa Microsoft"Ilikwenda kwa Hewlett-Packard, ambayo, hata hivyo, miaka michache baadaye ilipata mzigo mwingine mzito wa shirika - VMS OS.

Licha ya ukweli kwamba NT na VMS zilitofautiana, mifumo hii ya uendeshaji iliendelea mfululizo wa ukopaji wa kipekee. Hasa, Windows NT ilipokea usaidizi wa nguzo tu mwaka wa 1997, wakati VMS ilikuwa nayo tangu 1984, na toleo la 64-bit la Windows lilionekana hata baadaye (VMS ilihamia kwenye uwezo wa juu zaidi mwaka wa 1996). Kwa upande mwingine, VMS 7.0 ilianzisha uzi wa kiwango cha kernel mnamo 1995, na VMS 7.2 ilijumuisha hifadhidata kama ya Usajili na logi ya matukio ya kimataifa sawa na zana zinazolingana za NT. Windows Server 2003 inatoka, wacha tuone nini kitatokea ...

5.1. Maelezo mafupi Mfumo wa uendeshaji wa Windows NT.

Kwa sasa, tasnia ya kompyuta ya kimataifa inaendelea kwa kasi sana.Utendaji wa mfumo unaongezeka, na kwa hiyo uwezo wa kuchakata kiasi kikubwa cha data unaongezeka.

Mifumo ya uendeshaji ya darasa la MS-DOS haiwezi tena kukabiliana na mtiririko huo wa data na haiwezi kutumia kikamilifu rasilimali za kompyuta za kisasa. Kwa hiyo, hivi karibuni kumekuwa na mpito kwa mifumo ya uendeshaji yenye nguvu zaidi na ya juu ya darasa la UNIX, mfano ambao ni Windows NT, iliyotolewa na Microsoft Corporation.

Mtumiaji anapoona mfumo wa uendeshaji wa Microsoft kwa mara ya kwanza

Windows NT, anapigwa na kufanana kwa nje kwa wazi kwa interface ya kupendwa ya mfumo wa Windows 3. + Hata hivyo, kufanana hii inayoonekana ni sehemu ndogo tu ya Windows NT.

Windows NT ni mfumo wa uendeshaji wa 32-bit na kazi nyingi za kipaumbele. Vipengele vya msingi vya mfumo wa uendeshaji ni pamoja na usalama na

kuendelezwa huduma ya mtandao.

Windows NT pia hutoa upatanifu na mifumo mingine mingi ya uendeshaji, mifumo ya faili, na mitandao.

Kama inavyoonyeshwa kwenye takwimu ifuatayo, Windows NT ni

mfumo wa uendeshaji wa kawaida (wa juu zaidi kuliko monolithic), ambao unajumuisha tofauti iliyounganishwa kiasi modules rahisi.

Kuu Moduli za Windows NT ni (zilizoorodheshwa kwa mpangilio kutoka kiwango cha chini kabisa cha usanifu hadi cha juu zaidi): HAL (Tabaka la Uondoaji wa Kifaa), Kernel, Mtendaji, mifumo ndogo iliyolindwa na mifumo midogo ya mazingira.

Muundo wa msimu wa Windows NT

5.2. Mfumo wa faili wa Windows NT.

Wakati Windows NT ilitolewa kwa mara ya kwanza, ilijumuisha usaidizi wa mifumo mitatu ya faili. Hili ni jedwali la ugawaji wa faili (FAT) ambalo lilitoa upatanifu na MS-DOS, mfumo wa faili kuongezeka kwa tija(HPFS), ambayo ilitoa uoanifu na Meneja wa LAN, na mfumo mpya wa faili unaoitwa New Technologies File System (NTFS).

NTFS ilikuwa na faida kadhaa juu ya mifumo ya faili iliyotumiwa kwa seva nyingi za faili wakati huo.

Ili kuhakikisha uadilifu wa data, NTFS ina kumbukumbu ya muamala. Mbinu hii haizuii uwezekano wa kupoteza habari; hata hivyo, inaongeza kwa kiasi kikubwa uwezekano kwamba ufikiaji wa mfumo wa faili utawezekana hata ikiwa uadilifu wa mfumo wa seva umetatizika. Hili linawezekana kwa kutumia logi ya muamala kufuatilia majaribio bora ya kuandika diski wakati Windows NT inapoanzishwa. Logi ya muamala pia hutumiwa kuangalia diski kwa makosa badala ya kuangalia kila faili wakati wa kutumia jedwali la ugawaji wa faili.

Moja ya faida kuu za NTFS ni usalama. NTFS hutoa uwezo wa kuongeza Maingizo ya Kudhibiti Ufikiaji (ACEs) kwenye Orodha ya Udhibiti wa Ufikiaji (ACL). ACE ina kikundi au jina la kitambulisho cha mtumiaji na tokeni ya ufikiaji ambayo inaweza kutumika kuzuia ufikiaji wa saraka au faili mahususi. Ufikiaji huu unaweza kujumuisha uwezo wa kusoma, kuandika, kufuta, kutekeleza na hata kumiliki faili.

Kwa upande mwingine, ACL ni chombo kilicho na ingizo moja au zaidi za ACE. Hii hukuruhusu kuzuia ufikiaji watumiaji binafsi au vikundi vya watumiaji kwa saraka au faili maalum kwenye mtandao.

Kwa kuongezea, NTFS inasaidia kufanya kazi na majina marefu ambayo yana urefu wa hadi herufi 255 na yana herufi kubwa na ndogo kwa mpangilio wowote. Moja ya sifa kuu za NTFS ni uundaji wa moja kwa moja majina sawa yanaoana na MS-DOS.

NTFS pia ina kipengele cha ukandamizaji ambacho kilionekana kwanza katika toleo la 3.51 la NT. Inatoa uwezo wa kubana faili yoyote, saraka au diski ya NTFS. Tofauti na programu za compression za MS-DOS, ambazo huunda diski ya kawaida inayoonekana kama faili iliyofichwa na kubana data zote kwenye diski hiyo, Windows NT hutumia safu ya ziada ya mfumo mdogo wa faili kukandamiza na kufinya faili zinazohitajika bila kuunda. diski halisi. Hii ni muhimu wakati wa kukandamiza ama sehemu fulani ya diski (kwa mfano, saraka ya mtumiaji), au faili za aina maalum (kwa mfano, faili za picha). Upungufu pekee wa ukandamizaji wa NTFS ni kiwango cha chini cha ukandamizaji ikilinganishwa na mipango ya compression ya MS-DOS. Lakini NTFS ina kuegemea zaidi na utendaji.

Kwa hivyo, kutoka kwa yote hapo juu tunaweza kuhitimisha:

Ili kuendana na mifumo tofauti ya uendeshaji, Windows NT ina mfumo wa faili wa FAT 32. Aidha, Windows NT ina mfumo wake wa faili. Mfumo wa NTFS, ambayo haiendani na FAT 16. Mfumo huu wa faili una idadi ya faida juu ya FAT, na pia ina uaminifu wa juu na utendaji.

Hitimisho.

MS-DOS ni mfumo wa uendeshaji wa 16-bit unaoendesha katika hali halisi ya kichakataji. Katika matoleo ya Windows 3.1, baadhi ya msimbo ni 16-bit na baadhi ni 32-bit. Windows 3.0 inaungwa mkono hali halisi utendaji wa processor, wakati wa maendeleo ya toleo la 3.1 iliamuliwa kuachana na msaada wake.

Windows 95 ni mfumo wa uendeshaji wa 32-bit unaoendesha tu katika hali ya ulinzi wa CPU. Kernel, ambayo inajumuisha usimamizi wa kumbukumbu na utumaji wa mchakato, ina msimbo wa 32-bit tu. Hii inapunguza gharama na kuongeza kasi ya kazi. Baadhi tu ya moduli zina msimbo wa 16-bit wa uoanifu na modi ya MS-DOS. Windows 95 hutumia msimbo wa 32-bit popote inapowezekana, na kusababisha kuongezeka kwa uaminifu na uthabiti wa mfumo. Kwa kuongeza, kwa utangamano na maombi ya urithi na madereva pia hutumia msimbo wa 16-bit.

Windows NT sio maendeleo zaidi ya bidhaa zilizopo hapo awali. Usanifu wake uliundwa tangu mwanzo, kwa kuzingatia mahitaji ya mfumo wa uendeshaji wa kisasa. Katika jitihada za kuhakikisha upatanifu wa mfumo mpya wa uendeshaji, watengenezaji wa Windows NT walihifadhi kiolesura kinachojulikana cha Windows na kutekeleza usaidizi kwa mifumo iliyopo ya faili (kama vile FAT) na programu mbalimbali (zilizoandikwa kwa MS - Dos, Windows 3.x). Watengenezaji pia walijumuisha katika zana za Windows NT za kufanya kazi na anuwai mtandao maana yake.

Kuegemea na uimara hutoa sifa za usanifu, ambayo inalinda programu za maombi kutokana na uharibifu wa kila mmoja na mfumo wa uendeshaji. Windows NT hutumia ushughulikiaji wa muundo usiostahimili makosa katika viwango vyote vya usanifu, unaojumuisha mfumo wa faili unaoweza kurejeshwa wa NTFS na hutoa ulinzi kupitia usalama uliojengewa ndani na mbinu za juu za usimamizi wa kumbukumbu.


Mwishoni mwa 1988, Microsoft ilimpa David Cutler jukumu la kuongoza mradi mpya wa programu: kuunda mfumo mpya wa uendeshaji wa Microsoft kwa miaka ya 1990. Alikusanya timu ya wahandisi kutengeneza mfumo wa Teknolojia Mpya (NT).

Mpango asilia ulikuwa ni kutengeneza NT yenye violesura vya watumiaji wa mfumo wa OS/2 na violesura vya programu (API), lakini OS/2 iliuzwa vibaya na Windows 3.0 ilikuwa mafanikio makubwa na yanayoendelea sokoni. Baada ya kuona shinikizo la soko na changamoto zinazohusiana na kuunda na kusaidia mifumo miwili isiyooana, Microsoft iliamua kubadilisha mkondo na kuwaelekeza wahandisi wake kuelekea mkakati mmoja wa mfumo wa uendeshaji. Mkakati huu ulikuwa ni kuendeleza familia ya mifumo ya uendeshaji yenye msingi wa Windows ambayo ingeshughulikia aina nyingi za kompyuta, kutoka kompyuta ndogo ndogo hadi vituo vingi vya kazi vya multiprocessor. Kwa hivyo, kizazi kijacho cha mifumo ya Windows kiliitwa Windows NT.

Windows NT inaauni kiolesura cha kiolesura cha kielelezo cha Windows (GUI) na pia ni mfumo wa kwanza endeshi wa Microsoft wenye msingi wa Windows kusaidia Win32 API, kiolesura cha programu cha 32-bit cha kutengeneza programu mpya. Win32 API hufanya kupatikana kwa programu vipengele vya juu vya mfumo wa uendeshaji kama vile michakato yenye nyuzi nyingi, maingiliano, usalama, I/O, na usimamizi wa kitu.

Mnamo Julai 1993, mifumo ya kwanza ya uendeshaji ya familia ya NT ilionekana - Windows NT 3.1 na Windows NT Advanced Server 3.1.

Matoleo

  • Windows NT 3.1 (Julai 27, 1993)
  • Windows NT 3.5 (Septemba 21, 1994)
  • Windows NT 3.51 (Mei 30, 1995)
  • Windows NT 4.0 (Agosti 24, 1996)
  • Windows 2000 (Februari 17, 2000)
  • Windows XP (Oktoba 25, 2001)
  • Toleo la Windows XP 64-bit (Machi 28, 2003)
  • Windows Server 2003 (Aprili 25, 2003)
  • Toleo la Windows XP Media Center 2003 (Desemba 18, 2003)
  • Toleo la Windows XP Media Center 2005 (Oktoba 12, 2004)
  • Toleo la Windows XP Professional x64 (Aprili 25, 2005)
  • Misingi ya Windows kwa Kompyuta za Urithi (Julai 8, 2006)
  • Windows Vista (Novemba 30, 2006)
  • Seva ya Nyumbani ya Windows (Novemba 7, 2007)
  • Windows Server 2008 (Februari 27, 2008)

Muundo wa Windows NT

Kimuundo, Windows NT inaweza kuwakilishwa katika sehemu mbili: sehemu ya mfumo wa uendeshaji unaoendesha katika hali ya mtumiaji, na sehemu ya mfumo wa uendeshaji unaoendesha katika hali ya kernel.

Sehemu ya Windows NT inayoendesha katika hali ya kernel inaitwa sehemu ya mtendaji. Inajumuisha idadi ya vipengee vinavyodhibiti kumbukumbu pepe, vitu (rasilimali), ingizo/pato na mfumo wa faili (pamoja na viendesha mtandao), mawasiliano ya kuchakata, na kwa sehemu mfumo wa usalama. Vipengele hivi vinaingiliana kwa kutumia mawasiliano kati ya moduli. Kila sehemu huita zingine kwa kutumia seti ya taratibu za ndani zilizoainishwa kwa uangalifu.

Sehemu ya pili ya Windows NT, inayofanya kazi katika hali ya mtumiaji, ina seva - kinachojulikana kama mfumo mdogo wa ulinzi. Kwa kuwa mifumo ndogo haiwezi kushiriki kumbukumbu kiotomatiki, huwasiliana kwa kutuma ujumbe. Ujumbe unaweza kutumwa kati ya mteja na seva, na kati ya seva mbili. Ujumbe wote hupitia mtendaji wa Windows NT. Windows NT kernel hupanga nyuzi katika mifumo ndogo iliyolindwa kwa njia sawa na nyuzi katika michakato ya kawaida ya programu.

Msaada kwa mifumo ndogo iliyolindwa hutolewa na sehemu ya utendaji. Vipengele vyake ni:

  • Msimamizi wa kitu. Huunda, kufuta na kudhibiti vipengee vya wakati wa utekelezaji—aina za data dhahania zinazotumiwa kuwakilisha rasilimali za mfumo.
  • Mfuatiliaji wa usalama. Inaweka sheria za ulinzi kwenye kompyuta ya ndani. Inalinda rasilimali za mfumo wa uendeshaji, inalinda na kusajili vitu vinavyoweza kutekelezwa.
  • Msimamizi wa mchakato. Huunda na kukomesha, kusimamisha na kurejesha michakato na nyuzi, na pia huhifadhi habari kuzihusu.

Kidhibiti cha kumbukumbu halisi.

  • Mfumo mdogo wa I/O. Inajumuisha vipengele vifuatavyo:
    • meneja wa I/O ambaye hutoa vifaa vya I/O vinavyojitegemea vya kifaa;
    • mifumo ya faili - madereva ya NT ambayo hufanya maombi ya I/O yenye mwelekeo wa faili na kutafsiri kuwa simu kwa vifaa vya kawaida;
    • redirector ya mtandao na seva ya mtandao - madereva ya mfumo wa faili ambayo hupeleka maombi ya mbali ya I / O kwa mashine za mtandao na kupokea maombi kutoka kwao;
    • madereva ya kifaa cha mtendaji - madereva ya kiwango cha chini ambayo hudhibiti kifaa moja kwa moja;
    • meneja wa kache anayetumia uhifadhi wa diski.

Sehemu ya utekelezaji, kwa upande wake, inategemea huduma za kiwango cha chini zinazotolewa na NT kernel. Kazi za Kernel ni pamoja na:

  • kupanga mchakato,
  • kushughulikia usumbufu na isipokuwa,
  • maingiliano ya processor kwa mifumo mingi ya usindikaji,
  • kurejesha mfumo baada ya kushindwa.

Kernel huendesha katika hali ya upendeleo na haiondolewa kamwe kutoka kwa kumbukumbu. Kokwa inaweza kufikiwa tu kupitia kukatiza.

Mifumo midogo iliyolindwa ya Windows NT huendeshwa katika hali ya mtumiaji na huundwa na Windows NT wakati mfumo wa uendeshaji unapoanza. Mara tu baada ya kuundwa kwao, wanaanza mzunguko usio na mwisho wa utekelezaji, kujibu ujumbe unaokuja kwao kutoka kwa michakato ya maombi na mifumo mingine ndogo. Kati ya mifumo ndogo iliyolindwa, aina ndogo inaweza kutofautishwa inayoitwa mifumo ndogo ya mazingira. Mifumo midogo ya mazingira hutekeleza miingiliano ya programu endeshi (APIs). Aina zingine za mifumo ndogo, inayoitwa mifumo ndogo ndogo, hufanya kazi zinazohitajika na mfumo wa uendeshaji. Kwa mfano, mfumo mwingi wa usalama wa Windows NT unatekelezwa kama mfumo mdogo; seva za mtandao pia hutekelezwa kama mifumo ndogo muhimu.

Mfumo mdogo muhimu zaidi wa mazingira ni Win32, mfumo mdogo ambao hutoa ufikiaji wa programu kwa API ya Windows 32-bit. Zaidi ya hayo, mfumo huu hutoa kiolesura cha kielelezo na hudhibiti pembejeo/pato la mtumiaji.

Kila mfumo mdogo uliolindwa hufanya kazi katika hali ya mtumiaji, ikiita huduma ya mfumo wa utekelezaji kufanya vitendo vya upendeleo katika hali ya kernel. Seva za mtandao zinaweza kufanya kazi katika hali ya mtumiaji au modi ya kernel, kulingana na jinsi zimeundwa.

Mifumo midogo huwasiliana kwa kupitisha ujumbe. Wakati, kwa mfano, programu ya mtumiaji inaita utaratibu fulani wa API, mfumo mdogo wa mazingira unaotoa utaratibu huu hupokea ujumbe na kuutekeleza kwa kufikia kernel au kwa kutuma ujumbe kwa mfumo mwingine mdogo. Baada ya utaratibu kukamilika, mfumo mdogo wa mazingira hutuma ujumbe kwa programu iliyo na thamani ya kurudi. Kutuma ujumbe na shughuli zingine za mifumo ndogo iliyolindwa haionekani kwa mtumiaji.

Zana kuu inayoshikilia mifumo yote midogo ya Windows NT pamoja ni utaratibu wa Simu ya Utaratibu wa Ndani (LPC). LPC ni toleo lililoboreshwa la zana ya jumla zaidi, simu ya utaratibu wa mbali (RPC), ambayo hutumiwa kuwasiliana kati ya wateja na seva zilizo kwenye mashine tofauti kwenye mtandao.

Historia ya maendeleo

Uendelezaji wa Windows NT chini ya jina la kazi "NT OS/2" ilianzishwa mnamo Novemba 1988 na kikundi cha wataalam wakiongozwa na David Cutler. Dave Cutler ), ambao walijiunga na Microsoft kutoka DEC, ambapo walitengeneza VAX na VMS. Kazi iliendelea sambamba na ukuzaji wa IBM wa OS/2 2.0 yake, ambayo hatimaye ilitolewa mnamo Aprili 1992. Wakati huo huo, Microsoft iliendelea kuendeleza mifumo yake ya uendeshaji ya familia za DOS na Windows, ambazo zina sifa ya mahitaji ya chini ya rasilimali za kompyuta kuliko IBM OS/2. Baada ya Windows 3.0 kutolewa Mei 1990, Microsoft iliamua kuongeza kiolesura cha programu tangamanifu cha Windows API (API) kwa NT OS/2. Uamuzi huu ulisababisha msuguano mkubwa kati ya Microsoft na IBM, ambayo iliisha kwa mapumziko ushirikiano. IBM iliendelea kutengeneza OS/2 peke yake, na Microsoft ilianza kufanya kazi kwenye mfumo ambao hatimaye ulitolewa chini ya jina Windows NT. Ingawa haikupata umaarufu mara moja, kama vile DOS, Windows 3.x au Windows 9.x, kutoka kwa mtazamo wa uuzaji, Windows NT ilifanikiwa zaidi kuliko OS/2.

Ikumbukwe kuwa kama violesura vya programu NT iliundwa awali na OS/2 na kisha API za POSIX, na usaidizi wa Windows API ulioongezwa mwisho. Kwa kuongezea, Intel i860 na kisha MIPS zilipangwa hapo awali kama jukwaa la vifaa vya NT, msaada wa Intel x86 pia uliongezwa baadaye. Kisha, jinsi Mfumo wa Uendeshaji unavyoendelea, usaidizi wa miingiliano yote miwili iliyopangwa awali ya programu na majukwaa yote ya maunzi yaliyopangwa yalitoweka. Hakukuwa na toleo moja la toleo la OS hii kwa i860, ingawa ilitoka kwa jina la msimbo wa processor hii ambayo N10(N Ten), linatokana na jina la NT OS yenyewe. Microsoft sasa inafafanua kifupi cha NT kama Teknolojia Mpya. Na kama mbadala wa mfumo mdogo wa POSIX, Microsoft ilianza kutoa Huduma za Microsoft Windows kwa kifurushi cha UNIX.

Ili kuendeleza NT OS, Microsoft ilialika kikundi cha wataalamu kutoka DEC, wakiongozwa na David Cutler ( Kiingereza), mwenye uzoefu wa kuunda mifumo ya uendeshaji ya kufanya kazi nyingi kama vile VAX/VMS na RSX-11. Baadhi ya mambo yanayofanana yaliyobainika kati ya usanifu wa ndani wa Windows NT na familia ya VMS ya mifumo ya uendeshaji ilitoa sababu za kuwashutumu wafanyakazi wapya wa Microsoft walioajiriwa kwa kuiba mali miliki ya DEC. Mzozo ulioibuka ulisuluhishwa kwa amani: DEC ilitambua umiliki wa Microsoft wa teknolojia za msingi. Windows msingi NT, na Microsoft ziliunda na kusaidia toleo la Windows NT kwa usanifu wa DEC Alpha.

Licha ya mizizi yao ya kawaida, utangamano wa Windows NT na OS/2 ulipungua kwa kila toleo jipya la OS hii. Usaidizi wa OS/2 2.0 API, ingawa ulipangwa kwa ajili ya NT, haukukamilika kamwe; Windows NT 4.0 iliondoa usaidizi wa mfumo wa faili wa HPFS, na Windows XP iliondoa mfumo mdogo wa usaidizi wa programu kwa OS/2 1.x.

Matoleo

Jina ( jina la kanuni), chaguzi nambari ya toleo toleo la kwanza toleo la hivi karibuni /
Windows NT 3.1 3.1.528 Julai 27 SP3 (Novemba 10)
Kituo cha kazi, Seva ya hali ya juu
Windows NT 3.5 ( Daytona) 3.5.807 Septemba 21 SP3 (Juni 21)
Kituo cha kazi, Seva
Windows NT 3.51 ( Tukwila) 3.51.1057 Mei 30 SP5 (Septemba 19)
Kituo cha kazi, Seva
Windows NT 4.0 ( Indy) 4.0.1381 Julai 29 SP6a (Novemba 30)
Kituo cha kazi, Seva, Biashara ya Seva ( Itale), Seva ya terminal ( Hydra), Iliyopachikwa ( Impala)
Windows 2000 ( Cairo) 5.0.2195 Februari 17 SP4 (Juni 26)
Mtaalamu, Seva, Seva ya Kina, Seva ya Kituo cha Data
Windows XP ( Mpiga filimbi) 5.1.2600 tarehe 25 Oktoba SP3 (Mei 6)
Nyumbani, Mtaalamu, 64-bit, Kituo cha Media (eHome), Kompyuta ya Kompyuta Kibao, Kianzishaji, Kilichopachikwa ( Mantis), N; Misingi ya Windows kwa Kompyuta za Urithi ( Eiger)
Windows Server 2003 ( Seva ya Whistler, Seva ya Windows .NET) 5.2.3790 Aprili 24 SP2 (Mei 13)
Kawaida, Biashara, Kituo cha Data, Mtandao, Seva ya Biashara Ndogo ( Bobcat), Seva ya Kukokotoa ya Nguzo, Seva ya Uhifadhi; Windows XP Professional x64
Windows Vista ( Longhorn) 6.0.6000 Januari 30 SP2 (Mei 25)
Mwanzilishi, Msingi wa Nyumbani, Malipo ya Nyumbani, Business, Enterprise, Ultimate, N Home Basic, N Business; x64 lahaja za zote isipokuwa Starter
Windows Server 2008 ( Seva ya Longhorn) 6.0.6001 Februari 27 SP2 (Mei 27)
Kawaida, Biashara, Kituo cha Data, HPC, Mtandao, Hifadhi, Biashara Ndogo ( Cougar), Biashara Muhimu ( Kituo), Itanium; x64 lahaja za zote isipokuwa HPC
Windows 7 ( Blackcomb, Vienna) 6.1.7600 22 ya Oktoba SP1 (KB976932) (Februari 22)
Starter, Home Basic, Home Premium, Professional, Enterprise, Ultimate, Windows 7 N, Windows 7 E; x64 lahaja za zote isipokuwa Awali
Windows Server 2008 R2 6.1.7600 22 ya Oktoba SP1 (KB976932) (Februari 22)
Kawaida, Biashara, Kituo cha Data, HPC, Mtandao, Hifadhi, Biashara Ndogo, Itanium; matoleo yote ni 64-bit pekee
Windows 8 6.2.9200 Oktoba 26 Pro (Oktoba 26)
Windows 8, Windows 8 RT, Professional, Professional N, Professional WMC, Enterprise, Enterprise N; x64 lahaja zote isipokuwa Windows RT
Windows Server 2012 6.2.9200 Oktoba 26 RTM (Agosti 1)
Kawaida, Kituo cha Data, Hifadhi; matoleo yote ni 64-bit pekee

Usanifu wa mambo ya ndani

Vipengele vya Kernel

Vipengele vya Njia ya Mtumiaji

Mfumo mdogo wa kiolesura cha mtumiaji katika Windows NT hutekelezea kiolesura cha dirisha sawa na matoleo ya awali ya Windows. Aina mbili za vitu katika mfumo huu mdogo ambazo hazikuwepo katika matoleo ya 16-bit ya Windows na Windows 9x ni. vituo vya madirisha Na dawati. Kituo cha dirisha kinalingana na kikao kimoja Mtumiaji wa Windows NT - kwa mfano, wakati wa kuunganisha kupitia Huduma ya Desktop ya Mbali, kituo kipya cha dirisha kinaundwa. Kila mchakato wa kuendesha ni ya moja ya vituo vya dirisha; Huduma zingine isipokuwa zile zilizotiwa alama kuwa zinaweza kuingiliana na eneo-kazi zinazoendeshwa katika vituo tofauti vya dirisha visivyoonekana.

Kila kituo cha dirisha kina ubao wake wa kunakili, seti ya atomi za kimataifa (zinazotumika kwa shughuli za DDE), na seti ya kompyuta za mezani. Desktop ndio muktadha wa kila mtu shughuli za kimataifa Mifumo ndogo ya UI kama vile kusakinisha ndoano na ujumbe wa utangazaji. Kila thread inayoendesha ni ya moja ya dawati - moja ambapo madirisha hutumikia iko; haswa, uzi mmoja hauwezi kuunda windows nyingi za dawati tofauti. Moja ya dawati inaweza kuwa hai (inayoonekana kwa mtumiaji na kuweza kujibu matendo yake), dawati zilizobaki zimefichwa. Uwezo wa kuunda kompyuta za mezani kadhaa kwa kipindi kimoja cha kazi na kubadili kati yao haujatolewa hadi sasa njia za kawaida Kiolesura cha mtumiaji wa Windows, ingawa zipo programu za mtu wa tatu, kutoa ufikiaji wa utendakazi huu.

Vituo vya dirisha na kompyuta za mezani ndio vitu pekee vya mfumo mdogo wa kiolesura cha Windows NT vinavyoweza kupewa haki za ufikiaji. Aina zilizobaki za vitu ni dirisha Na menyu- kutoa ufikiaji kamili mchakato wowote ambao uko kwenye kituo kimoja cha dirisha nao. Ndiyo maana Huduma za Windows NT kwa chaguo-msingi huendeshwa katika vituo tofauti vya dirisha: huendeshwa na haki za juu, na kuruhusu michakato ya mtumiaji kudhibiti madirisha ya huduma kwa muda usiojulikana kunaweza kusababisha kuacha kufanya kazi na/au masuala ya usalama.

Violesura vya programu

API asili

Windows NT hutoa seti kadhaa za API kwa programu za programu. Ya kuu ni ile inayoitwa "asili" API ( NT Native API), inayotekelezwa katika maktaba ya kiunganishi chenye nguvu ntdll.dll na inayojumuisha sehemu mbili: simu za mfumo wa NT kernel (hufanya kazi na viambishi awali vya Nt na Zw ambavyo huhamisha utekelezaji hadi kwa ntoskrnl.exe vitendaji vya kernel vyenye majina sawa) na vitendakazi vinavyotekelezwa katika hali ya mtumiaji ( na kiambishi awali RTl). Baadhi ya kazi za kundi la pili hutumia simu za mfumo wa ndani; iliyobaki inajumuisha kabisa msimbo usio na upendeleo, na inaweza kuitwa sio tu kutoka kwa msimbo wa hali ya mtumiaji, lakini pia kutoka kwa madereva. Kando na vitendaji vya API Asilia, ntdll pia inajumuisha utendakazi wa maktaba ya kawaida ya C.

Nyaraka rasmi za API ya Asili ni chache sana, lakini jumuiya za wapenda shauku zimeweza kukusanya taarifa nyingi kuhusu kiolesura hiki kupitia majaribio na makosa. Hasa, mnamo Februari 2000, kitabu cha Gary Nebbett " Mwongozo wa kazi za msingi Windows NT/2000 API"(ISBN 1-57870-199-6); mwaka 2002 ilitafsiriwa kwa Kirusi (ISBN 5-8459-0238-X). Chanzo cha habari kuhusu Native API inaweza kuwa Windows DDK, ambayo inaelezea baadhi ya kazi za kernel zinazopatikana kupitia Native API, pamoja na kusoma. Msimbo wa Windows(uhandisi wa kubadilisha) - kupitia disassembly, ama kwa kutumia vyanzo vya Windows 2000 vinavyopatikana kupitia uvujaji, au kutumia vyanzo vya Windows 2003 vinavyopatikana kupitia Programu za Windows Utafiti wa Kernel.

Programu zinazoendeshwa kabla ya mifumo midogo inayotoa API zingine za Windows NT hupakiwa ni kwa kutumia API ya Native. Kwa mfano, programu ya autochk, ambayo huangalia disks wakati wa kupakia OS baada ya kuzima vibaya, hutumia API ya Native tu.

Win32 API

Mara nyingi, programu za programu za Windows NT hutumia Win32 API - kiolesura kilichoundwa kulingana na Windows 3.1 OS API, ambayo hukuruhusu kurudisha programu zilizopo kwa matoleo 16-bit ya Windows na mabadiliko madogo kwa nambari ya chanzo. Utangamano wa Win32 API na API ya Windows 16-bit ni kubwa sana kwamba programu 32-bit na 16-bit zinaweza kubadilishana ujumbe kwa uhuru, kufanya kazi na madirisha ya kila mmoja, nk. Mbali na kuunga mkono kazi za API ya Windows iliyopo, idadi ya vipengele vipya, ikiwa ni pamoja na usaidizi wa programu za kiweko, usomaji mwingi, na vitu vya ulandanishi kama vile bubu na semaphores. Hati za Win32 API zimejumuishwa kwenye SDK ya Mfumo wa Microsoft na zinapatikana kwenye tovuti.

Maktaba ya usaidizi ya Win32 API kimsingi yanaitwa sawa na maktaba za mfumo Windows 3.x, pamoja na nyongeza ya kiambishi 32: hizi ni maktaba kernel32, advapi32, gdi32, user32, comctl32, comdlg32, shell32 na idadi ya wengine. Vitendaji vya Win32 API vinaweza kutekeleza utendakazi unaohitajika wenyewe katika hali ya mtumiaji, au kupiga simu vitendaji vya API ya Asili vilivyoelezwa hapo juu, au kufikia mfumo mdogo wa csrss kupitia utaratibu wa LPC ( Kiingereza), au piga simu kwa mfumo kwa maktaba ya win32k, ambayo inatekeleza muhimu kwa Win32 Usaidizi wa API katika hali ya kernel. Chaguzi nne zilizoorodheshwa pia zinaweza kuunganishwa katika mchanganyiko wowote: kwa mfano, kitendakazi cha Win32 API WriteFile huita kitendakazi cha Native API NtWriteFile kuandika kwa faili ya diski, na huita kitendakazi kinachofaa cha csrss kutoa kwa koni.

Msaada wa Win32 API umejumuishwa katika familia ya Windows 9x OS; kwa kuongeza, inaweza kuongezwa kwa Windows 3.1x kwa kusakinisha kifurushi cha Win32s. Ili kurahisisha kuhifadhi programu zilizopo za Windows zinazotumia usimbaji wa MBCS kuwakilisha mifuatano, vitendaji vyote vya Win32 API vinavyokubali mifuatano kama vigezo vimeundwa katika matoleo mawili: vitendakazi vilivyo na kiambishi tamati A ( ANSI) kubali mifuatano ya MBCS, na fanya kazi na kiambishi tamati W ( pana) kubali mifuatano iliyosimbwa ya UTF-16. Katika Win32s na Windows 9x, ni kazi za A pekee ndizo zinazotumika, ambapo katika Windows NT, ambapo kamba zote ndani ya OS zimehifadhiwa pekee katika UTF-16, kila kazi ya A inabadilisha tu vigezo vyake vya kamba kuwa Unicode na kuita toleo la W la kazi sawa. Faili za H zilizotolewa za maktaba pia hufafanua majina ya kazi bila kiambishi, na matumizi ya A- au W-toleo la vitendaji imedhamiriwa na chaguzi za mkusanyiko, na katika moduli za Delphi kabla ya toleo la 2010, kwa mfano, zimefungwa kabisa. kwa chaguzi zilizo na kiambishi cha A. Ni muhimu kutambua, hata hivyo, kwamba vipengele vingi vipya vilivyoletwa katika Windows 2000 au mifumo ya uendeshaji ya Windows NT ya baadaye inapatikana tu katika toleo la Unicode, kwa sababu kazi ya kuhakikisha utangamano na programu za zamani na Windows. 9x haifanyiki tena kama hapo awali.

POSIX na OS/2

Toleo la kwanza la Windows NT 4 lilisaidia majukwaa manne (x86, Alpha, MIPS na PowerPC), lakini usaidizi wa mifumo isiyo ya kawaida ulipunguzwa kadri vifurushi vya huduma vilipotolewa: Usaidizi wa MIPS uliondolewa kutoka SP1, na usaidizi wa PowerPC kutoka SP3. Matoleo mapya zaidi ya Windows NT 4 yanaauni x86 na Alpha pekee; ingawa msaada wa Alpha ulipangwa kujumuishwa katika Windows 2000, uliondolewa kutoka kwa toleo la RC2. Kama matokeo, x86 ikawa jukwaa pekee linalotumika kwenye Windows 2000.

Msaada wa vichakataji 64-bit ulianza kutekelezwa katika Windows XP kwa usanifu wa kichakataji wa IA-64 - Intel Itanium. Kulingana na toleo la 64-bit la Windows XP, matoleo ya seva ya 64-bit ya Windows 2000 pia yaliundwa; Baadaye, usaidizi wa kichakataji cha Itanium uliongezwa kwa matoleo kadhaa ya Windows Server 2003. Usanifu wa pili wa 64-bit unaoungwa mkono katika familia ya Windows NT ya mifumo ya uendeshaji iliundwa na Usanifu wa AMD x86-64, baadaye kutekelezwa katika Wasindikaji wa Intel inayoitwa EM64T. Windows Server 2003 SP1 x64 na Windows XP Professional x64 ilitolewa kwa wakati mmoja, ikiwakilisha matoleo ya seva na desktop ya toleo sawa la Windows - haswa, sasisho sawa zinatumika kwa matoleo haya. Tangu 2005, Microsoft imeamua kuacha kuunga mkono IA-64.; Toleo la hivi punde la Windows NT ambalo linaauni Itanium kikamilifu ni Windows NT 5.2 (Toleo la XP Professional 64-bit na Server 2003). Walakini, kwa seva za gharama kubwa zaidi (na, ipasavyo, ngumu zaidi kusasisha), matoleo maalum ya Windows Server 2008 na Windows Server 2008 R2 yalitolewa, na Windows Server 2012 haikupokea tena msaada wa IA-64.

Vidokezo

Angalia pia