Kõvaketta ühendusliidesed - IDE, SATA ja teised. AHCI või IDE – kumb on parem ja mis vahe on


Mugavus ja arenduskiirus.

Aleksander Makarchuk, qb
Arendamise kiiruse ja mugavuse suurendamine.

Aleksander Smirnov, Greensight
Arengu kiirendamine, vigade vähendamine, lihtsalt mugavus.

2. Kas arendajate koolitamine on oluline? kasutades IDE-d? Miks?

Aleksei Fedorov, Klassikaaslased
See huvitav idee. Kindlasti on ettevõtteid, kes on valmis sellesse investeerima.

,ADV
Kui arendaja ei tea IDE põhiasju, siis arendamine võtab kauem aega. Kaasaegses maailmas on see juba kutsealal nõue.

Aleksander Makarchuk, qb
Pole vaja. Õpetada tähendab enda oma peale suruda. Iga arendaja töötab selle nimel, mis talle sobib. Samal ajal saate alati näidata oma IDE eeliseid.

Aleksander Smirnov, Greensight
See on pigem iga arendaja küsimus eraldi – mis on tema jaoks mugavam. Kuid algstaadiumis on nutikas automaatne täitmine ja vigade esiletõstmine peaaegu asendamatud.

3. Enamik kvaliteetseid IDE-sid on tasulised. Kas tasub litsentsidele raha kulutada?

Aleksei Fedorov, Klassikaaslased
Kulud. Praegune olukord Turg on selline, et tasulised IDE-d on tavaliselt palju paremad kui tasuta.

Aleksei Persianov, Mihhail Parfenjuk,ADV
Kui soovite kvaliteetset IDE-d, on see investeeringut väärt. Kui te ei toeta kvaliteetseid IDE-de arendajaid rubladega, siis nad ei tee kvaliteetseid IDE-sid

Aleksander Makarchuk, qb
Kui see on soovitav, siis on see muidugi vajalik. Aeg on raha.

Aleksander Smirnov, Greensight
Olenevalt vajadustest ja rahalistest vahenditest. Mõned inimesed vajavad Sublime'i, mõned tahavad kasutada Jetbrainsi tooteid, teised peavad paratamatult ostma Xcode'i.

4. Millest puuduvad tänapäevased IDE-d? Kas sellel turul võib tekkida hiiglane nagu JetBrains?

Aleksei Fedorov, Klassikaaslased
Võib olla. Kuid nendega on raske konkureerida: IDE väljatöötamine nõuab sadu inimaastaid ja kümneid miljoneid dollareid.

Aleksei Persianov, Mihhail Parfenjuk,ADV
JetBrains on praegu üle võtnud see turg, ja on ebatõenäoline, et lähitulevikus midagi paremat ilmub.

Aleksander Makarchuk, qb
Alati tuleb välja midagi uut ja IDE-d pole erand. Uute projektide plussiks on alati see, et võetakse arvesse vanade projektide puudusi.

Aleksander Smirnov, Greensight
Kui midagi paremat tuleb, siis miks mitte.

5. Millised muud tööriistad on olemas või võivad ilmuda, mis kiirendavad arengut ja muudavad arendajate elu lihtsamaks?

Aleksei Fedorov, Klassikaaslased
Projektiehitajad, veajälgijad, versioonikontrollisüsteemid, pideva koostamise ja integreerimise süsteemid ning paljud, paljud teised.

Aleksei Persianov, Mihhail Parfenjuk,ADV
Näiteks CI-süsteemid.

Aleksander Smirnov, Greensight
Raske öelda. Rohkem kolmanda osapoole tööriistad integreerub IDE-sse, mitte ei eksisteeri eraldi.

6. Milliseid suundumusi IDE funktsionaalsuse arengus võiksite tähele panna viimased aastad?

Aleksei Fedorov, Klassikaaslased
Integreerimine teiste süsteemidega, nagu veajälgijad, VCS või CI serverid. Ja muidugi kiirus – kaasaegsed IDE-d aeglustuvad palju vähem kui 10 aastat tagasi.

Aleksei Persianov, Mihhail Parfenjuk,ADV
Kõigi üleminek tasulised IDE-d abonemendi teel levitamiseks.

Aleksander Makarchuk, qb
Tellimused. Alati on lihtsam maksta väiksemat summat, eriti kui kahtled valikus või pole veel pilliga harjunud.

Aleksander Smirnov, Greensight
Pluginate arendamine, integreerimine kolmanda osapoole kommunaalteenused ja tarkvara, parandades automaatset lõpetamist.

Tere! Vaatasime seadet üksikasjalikult kõvaketas, kuid ma ei öelnud konkreetselt midagi liideste kohta - see tähendab kõvaketta ja muude arvutiseadmete vahelise interaktsiooni või täpsemalt kõvaketta ja arvuti interaktsiooni (ühendamise) viiside kohta.

Miks sa seda ei öelnud? Aga sellepärast, et see teema on väärt mitte vähem kui tervet artiklit. Seetõttu analüüsime täna üksikasjalikult praegu kõige populaarsemaid kõvaketta liideseid. Teen kohe broneeringu, et artikkel või postitus (kui teile mugavam on) saab seekord muljetavaldava suurusega, kuid kahjuks ei saa kuidagi ilma, sest kui kirjutada lühidalt, siis selgub, et täiesti ebaselge.

Arvuti kõvaketta liidese kontseptsioon

Esiteks määratleme mõiste "liides". Lihtsamalt öeldes (ja selles ma võimalusel end väljendangi, sest blogi on peal tavalised inimesed mõeldud inimestele nagu sina ja mina), liides – viis, kuidas seadmed omavahel suhtlevad omavahel ja mitte ainult seadmetega. Näiteks on paljud teist ilmselt kuulnud programmi nn sõbralikust liidesest. Mida see tähendab? See tähendab, et inimese ja programmi vaheline suhtlus on lihtsam, ei nõua kasutajalt palju pingutusi, võrreldes "mittesõbraliku" liidesega. Meie puhul on liides lihtsalt kõvaketta ja arvuti emaplaadi vahelise suhtluse viis. See on spetsiaalsete ridade komplekt ja spetsiaalne protokoll (andmeedastusreeglite kogum). Ehk siis puhtfüüsiliselt on tegemist kaabliga (kaabel, traat), mille mõlemal küljel on sisendid ning kõvakettal ja emaplaadil spetsiaalsed pordid (kaabli ühendamise kohad). Seega hõlmab liidese mõiste ühenduskaablit ja sellega ühendatud seadmetes asuvaid porte.

Noh, nüüd tänase artikli "mahla" jaoks, lähme!

Kõvaketaste ja arvuti emaplaadi interaktsiooni tüübid (liideste tüübid)

Niisiis, kõigepealt on meil kõige iidseim (80ndad), tänapäevastest kõvaketastest seda enam ei leia, see on IDE liides(teise nimega ATA, PATA).

IDE- inglise keelest tõlgitud "Integrated Drive Electronics", mis tähendab sõna-sõnalt "sisseehitatud kontroller". Alles hiljem hakati IDE-d nimetama andmeedastuse liideseks, kuna kontroller (asub seadmes, tavaliselt kõvaketastes ja optilistes draivides) ja emaplaat pidid olema millegagi ühendatud. Seda (IDE) nimetatakse ka ATA-ks (Advanced Technology Attachment), see osutub midagi sellist nagu "Advanced Connection Technology". Fakt on see, et ATA - paralleelne andmeliides, mille jaoks varsti (sõna otseses mõttes kohe pärast SATA väljaandmist, millest tuleb juttu allpool) nimetati see ümber PATA-ks (Parallel ATA).

Mida ma oskan öelda, kuigi IDE oli väga aeglane (andmeedastuskanali ribalaius oli vahemikus 100 kuni 133 megabaiti sekundis erinevad versioonid IDE - ja isegi siis puhtalt teoreetiliselt, praktikas palju vähem), kuid see võimaldas teil ühe kaabli abil emaplaadiga korraga ühendada kaks seadet.

Veelgi enam, kahe seadme korraga ühendamisel jagati liini võimsus pooleks. See pole aga kaugeltki IDE ainus puudus. Traat ise, nagu jooniselt näha, on üsna lai ja ühendamisel võtab see lõviosa vaba ruum süsteemiüksuses, mis mõjutab negatiivselt kogu süsteemi kui terviku jahutamist. Kokkuvõttes IDE on juba aegunud moraalselt ja füüsiliselt ei leidu sel põhjusel IDE-pistikut enam paljudel kaasaegsetel emaplaatidel, ehkki kuni viimase ajani paigaldati neid (kogus 1 tükk) endiselt soodsatele emaplaatidele ja mõnele keskmise hinna segmendi plaadile.

Järgmine liides, mis pole vähem populaarne kui IDE omal ajal, on SATA (jada-ATA), mille iseloomulik tunnus on andmeedastus jada. Väärib märkimist, et selle artikli kirjutamise ajal oli see artikkel kõige levinum personaalarvutites kasutamiseks.

SATA-l on 3 peamist varianti (versiooni), mis erinevad üksteisest läbilaskevõime poolest: rev. 1 (SATA I) - 150 Mb/s, rev. 2 (SATA II) - 300 Mb/s, rev. 3 (SATA III) - 600 Mb/s. Kuid see on ainult teoreetiline. Praktikas ei ületa kõvaketaste kirjutamis-/lugemiskiirus tavaliselt 100-150 MB/s ning ülejäänud kiirus pole veel nõutud ja mõjutab ainult kontrolleri ja HDD vahemälu interaktsiooni kiirust (suurendab ketast juurdepääsu kiirus).

Uuenduste hulgas võib märkida - kõigi SATA versioonide tagasiühilduvus (SATA rev. 2 pistikuga ketast saab ühendada emaplaadiga SATA rev. 3 pistikuga jne), täiustatud välimus ja kaabli ühendamise/lahtiühendamise lihtsus, pikem kaabli pikkus võrreldes IDE-ga (maksimaalselt 1 meeter, versus 46 cm IDE liidesel), tugi NCQ funktsioonid alates esimesest redaktsioonist. Kiirustan meeldima vanade seadmete omanikele, mis SATA-d ei toeta - need on olemas adapterid PATA-lt SATA-le, see on tõeline väljapääs olukorrast, mis võimaldab vältida raha raiskamist uue emaplaadi ostmisele või uus kõva kettale.

Erinevalt PATA-st pakub SATA liides ka "kuumvahetatavaid" kõvakettaid, mis tähendab, et kui toide on sisse lülitatud süsteemiplokk arvutisse, saate kõvakettaid ühendada/eemaldada. Tõsi, selle rakendamiseks peate veidi süvenema BIOS-i sätted ja lubage AHCI režiim.

Järgmine järjekorras - eSATA (väline SATA)- loodi 2004. aastal, sõna "väline" näitab, et seda kasutatakse ühendamiseks väline kõva kettad. Toetab " kuum vahetus" ajab. Pikkus liidesekaabel suurenenud võrreldes SATA-ga - maksimaalne pikkus on nüüd koguni kaks meetrit. eSATA ei ühildu füüsiliselt SATA-ga, kuid sellel on sama ribalaius.

Kuid eSATA on sellest kaugel ainus viisühendage välisseadmed arvutiga. Näiteks FireWire- kiire jadaliides välisseadmete, sealhulgas HDD ühendamiseks.

Toetab kõvaketaste kuumvahetust. Ribalaiuse poolest on see võrreldav USB 2.0-ga ja USB 3.0 tulekuga kaotab see isegi kiirust. Selle eeliseks on aga see, et FireWire on võimeline isokroonseks andmeedastuseks, mis hõlbustab selle kasutamist digitaalvideos, kuna võimaldab andmeid reaalajas edastada. Muidugi on FireWire populaarne, kuid mitte nii populaarne kui näiteks USB või eSATA. Sest raske ühendamine kettad, kasutatakse seda enamikul juhtudel, FireWire'i abil ühendatakse erinevad multimeediumiseadmed.

USB (universaalne Jadabuss) , võib-olla kõige levinum liides, mida kasutatakse väliste kõvaketaste, mälupulkade ja pooljuhtdraivid(SSD). Nagu eelmisel juhul, on ühenduskaabli maksimaalne pikkus üsna suur - kuni 5 meetrit USB kasutamine 2.0 ja kuni 3 meetrit - kui kasutatakse USB 3.0. Tõenäoliselt saate kaabli pikemaks teha, kuid sel juhul stabiilne töö seadmed jäävad kõne alla.

Edastuskiirus USB-andmed 2.0 on umbes 40 Mb/s, mis on üldiselt madal näitaja. Jah, muidugi, tavaliseks igapäevaseks failidega töötamiseks piisab kanali ribalaiusest 40 Mb/s, kuid niipea, kui räägime suured failid, hakkate paratamatult millegi kiirema poole vaatama. Kuid selgub, et väljapääs on olemas ja selle nimi on USB 3.0, mille ribalaius on eelkäijaga võrreldes kasvanud 10 korda ja on umbes 380 Mb/s ehk peaaegu sama kui SATA II, isegi natuke veel.

USB-kaabli kontakte on kahte tüüpi, tüüpi "A" ja tüüpi "B", mis asuvad kaabli vastasotstes. Tüüp "A" - kontroller (emaplaat), tüüp "B" - ühendatud seade.

USB 3.0 (tüüp "A") ühildub USB 2.0-ga (tüüp "A"). Tüübid "B" ei ühildu üksteisega, nagu on näha jooniselt.

Äike(Hele tipp). 2010. aastal Inteli poolt demonstreeriti esimest selle liidesega arvutit ja veidi hiljem liitus Thunderbolti toetuseks Inteliga mitte vähem kuulus firma Apple. Thunderbolt on üsna lahe (kuidas see teisiti saakski, Apple teab, millesse tasub investeerida), kas tasub rääkida selle toetusest sellistele funktsioonidele nagu: kurikuulus "hot swap" samaaegne ühendus mitme seadmega korraga, tõeliselt "tohutu" andmeedastuskiirus (20 korda kiirem kui USB 2.0).

Maksimaalne kaabli pikkus on vaid 3 meetrit (ilmselt pole rohkem vaja). Vaatamata kõigile loetletud eelistele pole Thunderbolt siiski veel "massiivne" ja seda kasutatakse peamiselt kallites seadmetes.

Lase käia. Järgmisena on meil paar väga sarnast liidest – SAS ja SCSI. Nende sarnasus seisneb selles, et neid mõlemaid kasutatakse peamiselt serverites, kus on vaja suurt jõudlust ja võimalikult lühikest kõvakettale juurdepääsu aega. Siiski on ka tagakülg medalid – kõik nende liideste eelised kompenseeritakse neid toetavate seadmete hinnaga. Kõvakettad, on SCSI või SAS toetamine suurusjärgu võrra kallim.

SCSI(Small Computer System Interface) – paralleelliides erinevate välisseadmete (mitte ainult kõvaketaste) ühendamiseks.

See töötati välja ja standardiseeriti isegi mõnevõrra varem kui SATA esimene versioon. IN värske versioon SCSI-l on kiirvahetustugi.

SAS(Serial Attached SCSI), mis asendas SCSI, pidi lahendama mitmed viimase puudused. Ja ma pean ütlema - see tal õnnestus. Fakt on see, et oma "paralleelsuse" tõttu kasutas SCSI ühist siini, nii et SAS-il ei ole seda puudust korraga ainult üks seade.

Lisaks on see SATA-ga tagasiühilduv, mis on kindlasti suur pluss. Kahjuks on SAS-liidesega kõvaketaste hind ligilähedane SCSI-kõvaketaste maksumusele, kuid sellest ei saa kuidagi lahti kiiruse eest.

Kui te pole veel väsinud, soovitan teil kaaluda veel ühte huvitav viis HDD ühendused - NAS(Network Attached Storage). Praegu on võrguga ühendatud salvestussüsteemid (NAS) väga populaarsed. Sisuliselt on see eraldi arvuti, omamoodi miniserver, mis vastutab andmete salvestamise eest. See ühendub võrgukaabli kaudu teise arvutiga ja juhitakse teisest arvutist selle kaudu tavaline brauser. Seda kõike on vaja juhtudel, kui on vaja suurt kettaruumi, mida kasutab korraga mitu inimest (peres, tööl). Andmed alates võrgusalvestus edastatakse kasutaja arvutitesse kas kaudu tavaline kaabel(Ethernet) või millal Wi-Fi abi. Minu arust väga mugav asi.

Ma arvan, et see on tänaseks kõik. Loodan, et teile materjal meeldis, soovitan teil tellida ajaveebi värskendused, et mitte millestki ilma jääda (vorm paremas ülanurgas) ja kohtume teiega järgmistes ajaveebi artiklites.

IDE (Integrated Device Electronics) - sisseehitatud kontrolleriga seadmete liides. Selle liidese loomisel keskendusid arendajad ühenduse loomisele kettaseade. Kontrolleri minimaalse kauguse tõttu kettalt suureneb jõudlus märkimisväärselt.

EIDE liidesel on primaarne ja sekundaarne kanal, millest igaüks saab ühendada kaks seadet, seega võib neid kokku olla neli. See võib olla HDD, CD-ROM või plaadi valija.

Füüsiliselt realiseeritakse IDE-liides lameda 40-tuumalise kaabli abil, millel võivad olla pistikud ühe või kahe seadme ühendamiseks. Kaabli kogupikkus ei tohiks ületada 45 sentimeetrit ja pistikute vahele peab jääma vähemalt 15 sentimeetrit.

  • a - kaabel paralleelliides ATA/IDE (RATA);
  • b - 40-pin PATA pistik;
  • c - PATA pistikud plaadil;
  • d - jada-ATA pistik (SATA);
  • d - plaadil olevad SATA-pistikud.

Paralleel-ATA-pistiku tabel

Võtke ühendust Eesmärk Võtke ühendust Eesmärk Võtke ühendust Eesmärk Võtke ühendust Eesmärk
1 Lähtesta 2 Maa 3 Andmed 7 4 Andmed 8
5 Andmed 6 6 Andmed 9 7 Andmed 5 8 Andmed 10
9 Andmed 4 10 Andmed 11 11 Andmed 3 12 Andmed 12
13 Andmed 2 14 Andmed 13 15 Andmed 1 16 Andmed 14
17 Andmed 0 18 Andmed 15 19 Maa 20 Võti
21 DDRQ 22 Maa 23 I/O salvestus 24 Maa
25 I/O lugemine 26 Maa 27 10C HRDY 28 Kaabli valimine
29 DDACK 30 Maa 31 IRQ 32 Pole kasutatud
33 Aadress 1 34 GPIO DMA66 Tuvasta 35 Aadress 0 36 Aadress 2
37 Chip Select 1P 38 Chip Select ZR 39 Aktiivne 40 Maa

IDE-l on mitu maitset, mis sobivad üksteisega ülespoole.

Täiustatud IDE spetsifikatsioon

IDE-liidese võimaluste arendamiseks pakkus Western Digital välja oma laiendatud spetsifikatsiooni Enhanced IDE (sünonüümid: E-IDE, Fast ATA, ATA-2 ja Fast ATA-2), mis seejärel omandas staatuse. Ameerika standard ANSI kutsus ATA-2. See sisaldab mitmeid uuendusi: üle 504 MB mahuga IDE-draivide tugi, mitme IDE-kontrolleri tugi süsteemis ja kuni nelja seadme ühendamine ühe kontrolleriga, samuti tugi muudele välisseadmetele peale kõvaketaste ( CD-ROM-, CD-R- ja DVD-draivid) -ROM-, LS-120- ja ZIP-draivid, magnetooptika, striimijad jne). IDE spetsifikatsiooni laiendust teist tüüpi IDE-liidesega draivide toetamiseks nimetatakse ka ATAPI-ks (ATA Packed Interface). Täiustatud IDE tutvustab ka elemente vahetusoperatsioonide paralleelseerimiseks ja andmete terviklikkuse jälgimiseks edastamise ajal.

  • a - ATA 2 ja ATA 3.
  • b - Ultra ATA.
  • c – Ultra ATA/66.

Täiustatud IDE liidese spetsifikatsioon lisab toe PIO režiimidele 3 ja 4, samuti DMA režiimidÜhesõnaline režiim 2 ja mitmesõnaline DMA režiim 1 ja 2. Maksimaalne andmeedastuskiirus siinil PIO-režiimis 3 on 4,1 MB/s ning PIO-režiimis 4 ja ühesõnalises DMA-režiimis 2 - 16,7 MB/s. Multi Wordi DMA-režiim 2 võimaldab teil saavutada maksimaalse edastuskiiruse üle 20 MB/s.

Järgmine samm IDE/ATA liidese väljatöötamisel oli Ultra ATA standard (teise nimega Ultra DMA, ATA-33, DMA-33, ATA-3). Ultra ATA on de facto standard kiire DMA režiimi kasutamiseks – režiim 3, pakkudes andmeedastuskiirust 33,3 MB/s. Usaldusväärse andmeedastuse tagamiseks sama kaabli kaudu kasutatakse spetsiaalseid veakontrolli ja -parandusahelaid, säilitades samal ajal tagasiühilduvus varasemate standarditega - ATA ja ATA-2.

IDE/ATA liideste omaduste tabel

Spetsifikatsioon ATA-1 ATA-2 ATA-3 ATA/ATAPI-4 ATA/ATAPI-5 ATA/ATAPI-6 ATA/ATAPI-7
Sünonüümid ATA, IDE EIDE, Fast ATA, Fast IDE, Ultra ATA EIDE ATA-4, UltraATA/33 ATA-5, UltraATA/66 ATA-6, Ultra ATA/100 ATA-7, Ultra ATA/133
Ribalaius, MB/s 3.3-8.3 11.1-16.6 16 16.7-33.3 44.4-66.7 100 133-150
Ühenduste arv 2 2 2 2 kaabli kohta 2 kaabli kohta 2 kaabli kohta 1 kaabli kohta
Kaabli omadused 40 kontakti 40 kontakti 40 kontakti 40 kontakti 40 kontakti, 80 juhet 40 kontakti, 80 juhet 7 kontakti
Uued omadused 28-bitine loogiline ploki adresseerimine (LBA) S.M.A.R.T. ATAPI liides, CD-ROM-i tugi, striimijad ja palju muud. 80-sooneline kaabel 48-bitine LBA SATA 1.0, pikkade loogiliste/füüsiliste plokkide tugi
Maksimaalne ketta suurus 137 GB (128 GiBi) 144 PB (128 PiBi)
CRC juhtimine puudub Ei Ei Ei Sööma Sööma Sööma
Väljastamise kuupäev 1981 1994 1996 1997 1999 2000 2003
1 ANSI standard X3.221-1994 HZ. 279-1996 X3.298-1997 NCITS 317-1998 NCITS 340-2000 NCITS 361-2002 NCITS 397-2005 1

Lõpuks - Ultra ATA/66, Ultra ATA/100, Ultra ATA/133 liidesed, võimaldades andmeedastust vastavalt kiirustel 66.100 ja 133-150 MB/s.

Järjepidev Jadaliides ATA (SATA). Serial ATA peamised eelised võrreldes paralleelse ATA-ga (PATA):

  • pistikutihvtide arvu on vähendatud (40 asemel 7-ni);
  • signaali pinget vähendatakse (500 mV-ni võrreldes PATA 5 V-ga);
  • väiksem, mugavam kaabel kuni 1 m pikkuse juhtmestiku jaoks;
  • Täiustatud on vigade tuvastamise ja parandamise võimalusi.

Esimene põlvkond (tuntud kui SATA/150 või SATA 1) ilmus turule 2002. aasta keskel ja toetas andmeedastuskiirusi kuni 1,5 Gbit/s. SATA 1 kasutab 8V/10V kodeeringuskeemi füüsiline tase, mille efektiivsus on 80%, mille tulemuseks on reaalne kiirus 1,2 Gbps ehk 150 MB/s.

Ka järgmine versioon (SATA 3,0 Gbps) kasutab 8V/10V vooluahelat, seega on maksimaalne edastuskiirus 2,4 Gbps ehk 300 MB/s. Tänapäeva HDD-seadmed aga selliseid kiirusi ei toeta, mistõttu on süsteemi tegelik jõudlus piiratud draivi võimalustega. 3,0 Gb/s spetsifikatsiooni nimetatakse sageli "Serial ATA 2" ("SATA 2"), aga ka SATA 3.0 või SATA/300, jätkates ATA/100, ATA/133 ja SATA/150 rida.

SCSI-liidese töötas välja 1970. aastate lõpus Shugart Associates. Algselt tuntud SASI (Shugart Associates System Interface) nime all, pärast standardiseerimist 1986. aastal, juba SCSI (hääldatakse “lugu”) nime all, sai sellest üks tööstusharu standardeid välisseadmete – kõvakettad, lindiseadmed, eemaldatavad kõvakettad ja magnetoad – ühendamisel. -optilised draivid, skannerid, CD-ROM ja CD-R, DVD-ROM jms SCSI-siiniga saab ühendada kuni kaheksa seadet, sealhulgas peamise SCSI-kontrolleriga (või hostadapteriga).

SCSI-liides on paralleelne ja on füüsiliselt lame kaabel 25-, 50-, 68-kontaktiliste pistikutega välisseadmete ühendamiseks. SCSI-siin sisaldab kaheksat andmeliini, millele järgneb paarsusliin ja üheksa juhtliini. SCSI-standard määratleb kaks signaaliedastusmeetodit: ühe otsaga ehk asümmeetriline (ühe otsaga) ja diferentsiaalne (diferentsiaal). Esimesel juhul on üks nullpotentsiaaliga juhe (“maandus”), mille suhtes edastatakse signaale mööda andmeliine, mille signaalitasemed vastavad TTL-loogikale. Diferentsiaalsignaali edastamise korral eraldatakse iga andmeliini jaoks kaks juhtmest ja selle liini signaal saadakse nende väljundite potentsiaalide lahutamisel. Nii saavutatakse parem mürakindlus, mis võimaldab kaabli pikkust suurendada.

  • a - üldarhitektuur;
  • b - SCSI-adapter.

Sest SCSI liides vaja on terminaatoreid (sobivad takistused, mis neelavad signaale kaabli otstes ja takistavad kaja teket).

SCSI-seadmed on ühendatud ka ahelas, kusjuures igal SCSI-seadmel on oma aadress (SCSI ID) vahemikus 0–7 (või 0–15). Kontrolleri plaadi aadress on tavaliselt kõrgeim väärtus SCSI ID – 7(15), alglaadimisaadress SCSI-draiv ID on 0 ja teine ​​ketas on 1. SCSI-siinil olevate seadmete vahelise vahetuse määrab standardiseeritud käskude loend (Common Command Set, CCS). SCSI tarkvara ei tööta füüsilised omadused draiv (st silindrite, peade jne arv), kuid tegeleb ainult loogiliste andmeplokkidega, nii et näiteks skanneri, kõvaketta ja CD-R-draivi saab paigutada ühte SCSI-ahelasse .

SCSI-kontroller küsib seadmeid kohe pärast toite sisselülitamist. Samal ajal rakendatakse SCSI-seadmete puhul seadmete automaatset konfigureerimist (Plug-and-play), kasutades SCAM-protokolli (SCSI Configured AutoMagically), milles SCSI ID väärtused eraldatakse automaatselt. Kõige laialdasemalt kasutatav SCSI-seadmete standardiseeritud haldamiseks. tarkvara liides ASPI (Advanced SCSI Programming Interface).

SCSI spetsifikatsioonid

Neid on rohkem kui tosin erinevad versioonid SCSI liides. Olulisemad neist on SCSI-1, Fast SCSI, Fast Wide SCSI, Ultra SCSI, Ultra 2 SCSI.

SCSI siini peamised omadused on järgmised:

  • laius - 8 või 16 bitti ("kitsas" või "lai");
  • siini taktsagedus;
  • liidese füüsiline tüüp (unipolaarne, diferentsiaal, optika).

Kiirust mõjutavad peamiselt kaks esimest parameetrit. Tavaliselt kirjutatakse need sõna SCSI eesliidetena.

Seadme-kontrolleri maksimaalse edastuskiiruse saab arvutada siini sageduse võtmisega ja kui “Wide” on saadaval, korrutage see 2-ga (näiteks FastSCSI - 10 MB/s, Ultra2WideSCSI -80 MB/s).

Serial SCSI liidesed

Neli viimast SCSI versiooni, nimelt SSA (Serial Storage Architecture), FC-AL ja Serial Attached SCSI (SAS), on eemaldunud traditsioonilisest paralleelsest SCSI standardist ja keskenduvad andmete edastamisele jadaside kaudu. Jadaliidese peamised eelised on suured andmeedastuskiirused; "kuum" sisse-välja; parem mürakindlus.

SCSI liidese versiooni (põlvkonna) tabel

Rehvi tüüp Max kiirus, MB/s Siini laius (biti laius) Maksimaalne side pikkus (olenevalt signaalide tüübist), meetrites Maksimaalne ühenduste arv
S.E. LVD HVD
SCSI-1 5 8 (kitsas) 6 - 25 8
Kiire SCSI 10 8 3 - 25 8
Kiire lai SCSI 20 16 (lai) 3 - 25 16
Ultra SCSI 20 8 1.5 - 25 8
Ultra SCSI 20 8 3 - - 4
Lai Ultra SCSI 40 16 - - 25 16
lai Ultra SCSI 40 16 1.5 - - 8
Lai Ultra SCSI 40 16 3 - - 4
Ultra2 SCSI 40 8 Pole määratletud kiiruste jaoks, mis on suuremad kui Ultra 12 25 8
Lai Uitra2 SCSI 80 16 - 12 25 16
Ultra3 SCSI või Ultra 160 SCSI 160 16 12 Pole määratletud kiiruste jaoks, mis on suuremad kui Ultra2 16
Ultra320 SCSI 320 16 - 12 - 16
S.S.A. 40 1 25 96(192)
SSA40 80 1 25 96(192)
FC-AL 1Gb 100 1 500-3000 127
FC-AL 2Gb 200 1 500-3000 127
FC-AL4Gb 400 1 500-3000 127
SAS 3 Gbit/s 300 1 6 16 256
Fiber kanal 2000 Ei ole määratud 10 000-100 000 Määratlemata

Terminaatorid, pistikud

Signaalide tüübi järgi on SCSI lineaarsed (Single Ended) ja diferentsiaalversioonid (diferentsiaal) nende kaablid ja pistikud on identsed, kuid seadmete vahel puudub elektriline ühilduvus.

Diferentsiaalversioon kasutab iga signaali jaoks keerdpaari juhte ja spetsiaalseid transiivereid, võimaldades samal ajal suuremat kaabli pikkust, säilitades samal ajal kõrge sidesageduse. Diferentsiaalliidest kasutatakse võimsates serverikettasüsteemides, kuid tavalistes personaalarvutites pole see tavaline.

Lineaarses versioonis peab signaal liikuma mööda oma üht juhet, keeratuna (või vähemalt lamekaablis teisest eraldatuna) neutraalse (tagasi)juhtmega.

SCSI-seadmed on ühendatud kaablitega ahelas. Sageli on üks äärmuslikest seadmetest hostadapter. Sellel võib iga kanali jaoks olla nii sisemine kui ka välimine pistik.

Elektriliste omaduste põhjal eristatakse järgmist tüüpi terminaatoreid:

  • passiivne (SCSI-1) takistusega 132 oomi (tavalised takistid). Need terminaatorid ei sobi kiirete SCSI-2 režiimide jaoks;
  • aktiivne (110 oomi) - spetsiaalsed terminaatorid, mis tagavad töö sagedusel 10 MHz SCSI-2-s;
  • FPT (Forced Perfect Terminator) on emissioonipiirajatega aktiivsete terminaatorite täiustatud versioon.

Aktiivsed terminaatorid vajavad toidet, selleks on olemas spetsiaalsed TERMPWR liideseliinid.

Kaablid

SCSI-kaablite valik on üsna lai. Peamised standardsed kaablid:

  • A-kaabel: standard 8-bitise SCSI-liidese jaoks, 50-juhtmeline sisekaabel (IDC-50 pistikud) või välise varjestatud (Centronics-50 pistikud).
  • B-kaabel: 16-bitine SCSI-2 laiendaja, pole laialdaselt saadaval.
  • P-kaabel: 16-bitine SCSI-2/3.68-juhe täiustatud miniatuursete varjestatud pistikutega, universaalne sise- ja välised kaablid SCSI 8-, 16- ja 32-bitised versioonid (8-bitises versioonis kontakte 1-5.31-39.65-68 ei kasutata); Väliste ühenduste pistikud näevad välja nagu Centronicsi miniatuursed lamedate kontaktidega versioonid, sisemised on tihvtkontaktidega.
  • Q-kaabel: 68-juhtmeline pikendus kuni 32 bitti, kasutatakse koos P-kaabliga.
  • D-25P ühenduskaabel: 8-bitine, standardne Macintoshi jaoks, kasutatakse mõnes välisseadmes (Iomega ZIP Drive).

Andmeedastuskiiruste, pikkuste ja kaablite tüüpide tabel SCSI-1, SCSI-2

Võimalikud on erinevad adapterkaablite variandid.

Pistikukontaktide määramine ühise A-kaabli näitel on näidatud tabelis.

SCSI A-kaabli ühenduslaud

Ühenduse tihvt Signaal Ühenduse tihvt Signaal
1 GND 26 DB0#
2 GND 27 DB1#
3 GND 28 DB2#
4 GND 29 DB3#
5 GND 30 DB4#
6 GND 31 DB5#
7 GND 32 DB6#
8 GND 33 DB7#
9 GND 34 DBParity#
10 GND 35
11 GND 36
12 GND/Reserveeritud 37 Reserveeritud
13 Avatud 38 TERMPWR
14 Reserveeritud 39 Reserveeritud
15 GND 40
16 GND 41 ATN#
17 GND 42 GND
18 GND 43 BSY#
19 GND 44 ACK#
20 GND 45 RST#
21 GND 46 MSG#
22 GND 47 SEL#
23 GND 48 C/D#
24 GND 49 REQ#
25 GND 50 I/O

Rehv. Nagu PCI siini, eeldab SCSI siini võimet vahetada teavet mis tahes seadmete paari vahel. Loomulikult toimub enamasti vahetus hostadapteri ja välisseadmete vahel. Andmeid seadmete vahel saab kopeerida ilma juurdepääsuta süsteemisiin arvuti. Sisseehitatud vahemäluga nutikatel hostiadapteritel on siin suur potentsiaal. Igas siini vahetuses osalevad selle algataja (Initiator) ja sihtseade (Target). Tabelis on näidatud siini signaalide otstarve.

SCSI siini signaali määramise tabel

Signaal Allikas: I = Algataja, T = Sihtmärk Eesmärk
DBx# - Pöördandmesiin paarsusbittidega
TERMPWR - Terminaatorite toiteallikas
ATN# I Tähelepanu
BSY# Mina, T Buss on hõivatud
REQ# T Andmeedastuse taotlus
ACK# I Vasta küsimusele REQ#
RST# Mina, T Lähtesta
MSG# T Sihtmärk edastab sõnumi
SEL# I/T Sihtseadme valimine algataja poolt või algataja uuesti valimine sihtseadme poolt
C/D# T Juht (0) / andmed (1) siinil
l/0# T Edastamise suund initsiaatori või faasi suhtes Valik (1) / Taasvalimine (0)

SCSI-seadme konfiguratsioonisuvandid

Kõik siinis olevad seadmed peavad olema järjepidevalt konfigureeritud. Nende jaoks peate programmiliselt või hüppajate abil määrama järgmised põhiparameetrid.

Seadme ID- SCSI ID - aadress 0-7 (või 0-15), ainulaadne iga siinis oleva seadme jaoks. Tavaliselt hostadapter, mis peaks olema kõrgeim prioriteet, on määratud ID 7. Seadme ID-de tehasemääramine on näidatud tabelis, kuigi see ei ole kohustuslik. Seadmed on adresseeritud asukohakoodiga (kuigi ID on määratud 3-4-bitise koodiga), mis tagab adresseerimise ühilduvuse samas siinis olevate 8- ja 16-bitiste seadmete vahel. SCSI ID-number määratakse tavaliselt hüppajate abil (kuigi SCSI-s on uued, Plug-and-Play-ga sarnased standardid, mis ei vaja hüppajaid).

Seadme identifikaatorite tehaseseadete tabel

Pariteedikontroll – SCSI Parity

Kui vähemalt üks siinis olev seade pariteeti ei toeta, tuleb see keelata kõigis selle siini seadmetes. Pariteedikontroll, eriti kettaseadmete puhul, on vahend, mis kaitseb edastuse ajal andmete riknemise eest.

Terminaatorite lubamine – lõpetamine

Aktiivseid terminaatoreid saab sisse lülitada ühe hüppaja abil või isegi juhtida tarkvara signaaliga. Terminaatorid peaksid olema lubatud ainult ahela lõppseadmetel.

Terminator Power – TerminatorPower

Aktiivsete terminaatorite kasutamisel peab terminaatorite toide hüppaja või tarkvara abil olema sisse lülitatud vähemalt ühes seadmes.

SCSI sünkroonne läbirääkimine

Kõrget jõudlust tagav sünkroonvahetusrežiim on lubatud seadmete vastastikusel kokkuleppel. Kui aga vähemalt üks siini seade seda ei toeta, tuleb hostadapteril läbirääkimised keelata. Veelgi enam, kui vahetus on algatatud sünkroonne seade, host toetab seda režiimi.

Käivitamine käsul – Käivitamine käsul või viitkäivitus – Viitkäivitus

Kui see valik on lubatud, käivitub seadme mootor ainult hostadapteri käsul, mis võimaldab vähendada toiteallika tippkoormust sisselülitamise hetkel. Host käivitab seadmed järjest.

Ühenduse katkestamise lubamine

Selle suvandi valimine võimaldab seadmetel siini küljest lahti ühendada, kui andmed pole valmis, mis on väga tõhus multitegumtöötlusrežiimis, kui siinil on mitu välisseadet.

Hostiadapter

SCSI-hostiadapter on kõige olulisem sõlm liides, mis määrab SCSI-seadme alamsüsteemi jõudluse. Adaptereid on lai valik, alustades kõige lihtsamatest, millega saab ühendada vaid seadmeid, mis ei ole jõudluskriitilised.

SCSI-hostiadapterite konfigureerimine SCSI siini seisukohast ei erine teiste seadmete seadistamisest (vt varem). Kaasaegsete adapterite puhul kasutatakse džemprite asemel tarkvara konfiguratsiooni. Konfiguratsiooniutiliit sisaldub tavaliselt BIOS-i laienduses (adapterkaardil) ja seda palutakse käivitada POST-i ajal lähtestamise ajal.

Millal on uuendus planeeritud? arvuti süsteem, võib liideste segadus komponentide valimist tõsiselt raskendada. Seega ei pruugi emaplaatidel olla IDE-liidest, samas kui kõvaketas või optiline draiv on selle kaudu ühendatud. Või uus draiv SATA-liidesega ei saa installida IDE-portidega süsteemi.

Definitsioon

IDE on paralleelliidese (PATA) turundusnimi, mida kasutatakse sisemiste kõvaketaste, optiliste draivide ja muud tüüpi salvestusseadmete ühendamiseks emaplaatidega.

SATAjadaliides andmeedastus, mida kasutatakse nii välise (eSATA) kui ka ühendamiseks sisemised draivid ja optilised draivid.

Võrdlus

Erinevus IDE ja SATA vahel on peamiselt ajutine. IDE-liides on tänapäeval emaplaatidel ja draividel haruldane külaline ning selle kasutamine on õigustatud peamiselt vaid soodsate uuenduste eesmärgil. Tõsi, juhul optilised draivid IDE asendamine SATA-ga ei anna praktiliselt mingit kasu ning kõvaketaste lugemis-/kirjutuskiirus on kaugel sellest, mida SATA suudab pakkuda. Kuid IDE kaob peagi täielikult, seega tasub siiski hoolitseda SATA-le ülemineku eest. Tänapäeval on SATA-draivid odavamad kui IDE-draivid ja neil on rohkem mahtu.

SATA mis tahes versioonis on suurema andmeedastuskiirusega (IDE maksimum on teoreetiliselt 133 Mb/s, SATA miinimum on 150 Mb/s) ja PATA (IDE) siini ribalaius on Uusim versioon on umbes 1064 Mbit/s versus esimese versiooni 1500 Mbit/s SATA ja kolmanda versiooni 6000 Mbit/s.

IDE kaudu ühendamiseks mõeldud kaabel on lai lame riba 80 südamikuga (varem oli 40), IDE liidese kontaktid on alati 40. SATA kaudu ühendamiseks mõeldud kaabel on kitsas ja seal on ainult 7 kontakti. emaplaadiga saab ühendada kaks seadet, millest üks tuleb master, SATA kaabli küljes ripub ainult üks. Oma kuju tõttu põhjustavad IDE-kaablid sageli korpuse sees ebaõiget õhuringlust ja segavad komponentide paigaldamist.

Vasakul on SATA. Õige – IDE

IDE kaudu ühendatud seadmed saavad toite nelja kontaktiga molex-pistiku kaudu, SATA-seadmed saavad toite kas 15-kontaktilisest pistikust või samast molexist. Seal on adapterid, mis võimaldavad teil mitte muretseda mis tahes liidesega seadmete toiteallikaga ühendamise pärast. Samuti on SATA uusimas versioonis võimalik seadet välja vahetada ilma arvutit täielikult välja lülitamata, samas kui IDE tuleb õiges toimingute järjestuses keelata.

Järelduste veebisait

  1. SATA on jadaliides, IDE on paralleelliides.
  2. SATA andmeedastuskiirus ja ribalaius on suuremad.
  3. SATA-kaabel on kompaktsem kui IDE-kaabel.
  4. TO IDE kaabel Saate ühendada kaks seadet, kuid ainult ühe SATA-ga.
  5. IDE-seadmed saavad toite molexi kaudu, SATA-seadmed saavad toite 15-kontaktilise või molexi kaudu.
  6. SATA-seadmed on tänapäeval odavamad kui IDE-seadmed ja palju levinumad.

Pythonis kirjutamine IDLE või Python Shelli abil on üsna mugav lihtsad asjad aga projektide mahu kasvades muutub programmeerimine piinavaks. IDE või isegi hea koodiredaktori kasutamine võib teie elu palju lihtsamaks muuta. Kuid küsimus on – mida valida?

Selles artiklis käsitleme põhitööriistu, mis võimaldavad teil Pythonis kirjutada. Me ei vali teile parimat varianti, kuid vaatleme mõlema plusse ja miinuseid ning aitame teil teha teadliku otsuse.

Mis on IDE ja koodiredaktor?

IDE (või integreeritud arenduskeskkond) on tarkvara arendamiseks loodud programm. Nagu nimigi ütleb, koondab IDE mitu spetsiaalselt arendamiseks mõeldud tööriista. Need tööriistad sisaldavad tavaliselt koodiga töötamiseks mõeldud redaktorit (nt süntaksi esiletõstmine ja automaatne täitmine); ehitus-, käitus- ja silumistööriistad; ja mingi versioonikontrollisüsteem.

Enamik IDE-sid toetab mitut programmeerimiskeelt ja neil on palju funktsioone, mis tähendab, et need võivad olla suured, nende allalaadimine ja installimine võtab kaua aega ning nende õigeks kasutamiseks on vaja laialdasi teadmisi.

Teisest küljest on olemas koodiredaktorid, mis on süntaksi esiletõstmise ja koodi vormindamise võimalustega tekstiredaktorid. Enamus head toimetajad kodeerijad saavad koodi käivitada ja silurit kasutada ning parimad saavad suhelda isegi versioonihaldussüsteemidega. Võrreldes IDE-ga on hea koodiredaktor tavaliselt kergem ja kiirem, kuid sageli väiksema funktsionaalsuse hinnaga.

Nõuded heale arenduskeskkonnale

Mida me siis arenduskeskkonnast vajame? Erinevate keskkondade funktsioonide komplekt võib erineda, kuid programmeerimist lihtsustavad põhilised asjad:

  • Failide salvestamine. Kui IDE või redaktor ei anna teile võimalust oma tööd salvestada ja hiljem avada kõik samas olekus, milles see oli selle sulgemisel, siis pole see nii palju IDE;
  • Koodi käivitamine keskkonnast. Samamoodi, kui peate koodi käivitamiseks keskkonnast väljuma, pole see midagi muud kui lihtne tekstiredaktor;
  • Silumise tugi. Koodi läbimise võimalus on kõigi IDE-de ja enamiku heade koodiredaktorite põhifunktsioon;
  • Süntaksi esiletõstmine. Võimalus kiiresti leida märksõnad, muutujad jne muudavad koodi lugemise ja mõistmise palju lihtsamaks;
  • Automaatne koodi vormindamine. Iga redaktor või IDE, mis tegelikult on üks, tunneb mõne aja pärast või väljenduse jaoks kooloni ära ja lisab järgmise rea automaatselt taande.

Muidugi on palju muid funktsioone, millest ei tahaks ilma jääda, kuid ülaltoodud on põhifunktsioonid, mis ühel heal arenduskeskkonnal olema peaksid.

Vaatame nüüd mõnda üldotstarbelist tööriista, mida saate Pythoni arendamiseks kasutada.

Pythoni toega toimetajad ja IDE-d

Eclipse + PyDev

Kui olete avatud lähtekoodiga kogukonnale lähedal, olete ilmselt kuulnud Eclipse'ist. Linuxi, Windowsi ja OS X jaoks saadaval olev Eclipse on de facto avatud lähtekoodiga IDE Java arendamiseks. Seal on palju laiendusi ja lisasid, mis muudavad Eclipse'i mitmesuguste ülesannete jaoks kasulikuks.

Üks selline laiendus on PyDev, mis pakub interaktiivset Pythoni konsooli ning silumis- ja koodilõpetamisvõimalusi. Selle installimine on lihtne: käivitage Eclipse, valige Abi → Eclipse Marketplace ja otsige PyDev. Klõpsake nuppu Installi ja vajadusel taaskäivitage Eclipse.

Eelised: Kui teil oli Eclipse juba installitud, on PyDevi installimine kiire ja sujuv. Kogenud Eclipse'i kasutajal pole selle laienduse õppimisega probleeme.

Puudused: Kui te alles hakkate Pythoni või üldiselt arendustööd õppima, võib Eclipse olla tohutu koorem. Kas mäletate, kui ütlesime, et IDE-d on suured ja nende täielikuks kasutamiseks on vaja rohkem kogemusi? Seda kõike võib öelda Eclipse’i kohta.

Ülev tekst

Tüüp: koodiredaktor
Veebisait: http://www.sublimetext.com

Sublime Text on väga populaarne koodiredaktor, mille on kirjutanud Google'i insener, kes unistab paremast tekstiredaktorist. Kõikidel platvormidel saadaval oleval Sublime Textil on Pythoni koodi redigeerimise sisseehitatud tugi, samuti rikkalik laienduste komplekt, mida nimetatakse pakettideks, mis laiendavad süntaksi ja redigeerimisvõimalusi.

Täiendava Pythoni paketi installimine võib olla keeruline – kõik Sublime Text paketid on kirjutatud Pythonis, nii et kogukonnapakettide installimine võib sageli nõuda Pythoni skripti käivitamist otse redaktoris.

Eelised:Sublime Textil on palju fänne. Koodiredaktorina on Sublime Text kiire, kerge ja hästi toetatud.

Puudused: Sublime Text ei ole tasuta, kuigi saate seda kasutada katseaeg nii palju kui sulle meeldib. Laienduste installimine võib muutuda teiseks ülesandeks. Lisaks ei toeta redaktor silumist ega koodi käivitamist.

Atom

Tüüp: koodiredaktor
Veebisait: https://atom.io/

Kõigil platvormidel saadaval olevat Atomit on nimetatud "21. sajandi häkitavaks tekstiredaktoriks". Atom on kirjutatud kasutades Electronit – raamistikku platvormideüleste töölauarakenduste loomiseks JavaScripti, HTML-i ja CSS-i abil – ning sellel on palju laiendusi. Pythoni tuge saab lubada ka laienduse abil, mille saab installida otse Atomi.

Eelised: Tänu Electronile toetatakse kõigil platvormidel. Atom on kerge ja kiiresti allalaaditav ja laaditav.

Puudused: Ehitamise ja silumise tugi ei ole sisse ehitatud, vaid lisatakse laienduste kaudu. Kuna Atom on kirjutatud Electroni abil, töötab see alati JavaScripti protsessina, mitte natiivse rakendusena.

GNU Emacs

Tüüp: koodiredaktor
Veebisait: https://www.gnu.org/software/emacs/

Ammu enne iPhone-Androidi sõda, enne Linuxi-Windowsi sõda, isegi enne PC-Maci sõda toimus toimetajate sõda, mille üheks võitlejaks oli GNU Emacs. GNU Emacs, mida kirjeldatakse kui "laiendatavat, kohandatavat, isedokumenteeruvat tekstiredaktorit", on eksisteerinud peaaegu sama kaua kui UNIX ja on kogunud palju jälgijaskonda.

Igal platvormil (ühel või teisel kujul) tasuta saadaval olev GNU Emacs kasutab kohandamiseks Lispi keelt. Loomulikult on Pythoni jaoks ka kohandamisskriptid.

Eelised: Olete Emacsiga tuttav, kasutate Emacsi, armastate Emacsit. Lisp on teie teine ​​keel ja teate, et saate sellega kõike teha.

Puudused: kohandamine hõlmab Lisp-koodi sisestamist (või kopeerimist ja kleepimist). erinevaid skripte. Kui neid pole, peate võib-olla selle välja selgitamiseks õppima Lispi.

Vi/Vim

Tüüp: koodiredaktor
Veebisait: https://www.vim.org/

Toimetajasõja teisel poolel on VI/VIM. Vaikimisi saadaval peaaegu kõigis UNIX-süsteemides ja Mac OS X-is, VI on võitnud sama palju fänne. VI ja VIM on modaalsed redaktorid, mis eraldavad faili vaatamise selle redigeerimisest. VIM sisaldab kõike, mis VI-l on, ning mõningaid täiustusi, näiteks laienduste kättesaadavust. Erinevat tüüpi Pythoni ülesannete jaoks saate kasutada VIMScripte.

Eelised: Sa oled VI-ga tuttav, kasutad VI-d, armastad VI-d. VIMScriptid ei hirmuta teid ja teate, kuidas neid oma tahte järgi painutada.

Puudused: Nagu ka Emacsi puhul, pole Pythoni arendusvõimaluste lisamiseks skriptide otsimine ega kirjutamine väga mugav ja teil pole aimugi, kuidas modaalredaktor üldse peaks töötama.

Visual Studio

Eelised: nagu ka Eclipse'i puhul, kui see on juba installitud Visual Studio muude ülesannete puhul toimub PTVS-i installimine probleemideta.

Puudused: Nagu ka Eclipse'i puhul, on Visual Studio natuke palju kasulikum, kui vajate ainult Pythonit. Lisaks, kui kasutate Linuxit, siis olete hädas - selle platvormi jaoks pole Visual Studiot.

Visual Studio kood

Tüüp: koodiredaktor
Veebisait: https://code.visualstudio.com/
Pythoni tööriistad: https://marketplace.visualstudio.com/items?itemName=ms-python.python

Visual Studio Code (mitte segi ajada Visual Studioga) on täisfunktsionaalne koodiredaktor, mis on saadaval opsüsteemides Windows, Linux ja Mac OS X. VS Code on laiendatav avatud lähtekoodiga redaktor, mida saab kohandada iga ülesande jaoks. Nagu Atom, on ka VS Code üles ehitatud Electronile, seega on sellel samad eelised ja puudused.

Pythoni toe lisamine VS-koodile ei saa olla lihtsam – otsige Marketplace'ist "Python", klõpsake "Install" ja vajadusel taaskäivitage redaktor. VS Code tuvastab automaatselt teie Pythoni tõlgi ja installitud teegid.

Eelised: Tänu Electronile on VS Code saadaval kõigil hämmastava funktsionaalsusega platvormidel. Lisaks võib lähtekoodi leida avalikult.

Puudused: Kuna Electron on kaasatud, tähendab see, et VS-kood ei ole kohalik rakendus. Lisaks takistab mõne inimese religioon neil Microsofti tooteid kasutamast.

Pythoni jaoks loodud toimetajad ja IDE-d

PyCharm

Üks parimaid täisfunktsionaalsusega IDE-sid, mis on spetsiaalselt Pythoni jaoks loodud, on PyCharm. Saadaval on nii tasuta avatud lähtekoodiga (Community) kui ka tasulised (professionaalsed) IDE valikud. PyCharm on saadaval opsüsteemides Windows, Mac OS X ja Linux.

PyCharm toetab Pythoni arendust juba karbist välja – avage uus fail ja alustage koodi kirjutamist. Saate koodi käivitada ja siluda otse PyCharmist. Lisaks on IDE-l projektide ja versioonikontrolli tugi.

Eelised: See on Pythoni arenduskeskkond, mis toetab kõike ja on hea kogukond. Selles saate Pythoni koodi redigeerida, käivitada ja siluda.

Puudused: PyCharmi laadimine võib olla aeglane ja vaikesätteid võib olla vaja olemasolevate projektide jaoks kohandada.

Spyder

Spyder on Pythoni jaoks mõeldud avatud lähtekoodiga IDE, mis on optimeeritud andmeteadlastele. Spyder on komplektis Anaconda paketihalduriga, seega on võimalik, et see on juba installitud.

Spyderi puhul on huvitav see, et selle sihtrühmaks on Pythonit kasutavad andmeteadlased. Näiteks töötab Spyder hästi selliste andmeteaduslike raamatukogudega nagu SciPy, NumPy ja Matplotlib.

Spyderil on funktsionaalsus, mida võiksite oodata standardselt IDE-lt, näiteks koodiredaktor koos süntaksi esiletõstmise, koodi lõpetamise ja isegi sisseehitatud dokumentatsioonibrauseriga.

Spyderi eripäraks on muutuva uurija olemasolu. See võimaldab teil vaadata muutujate väärtusi tabeli kujul otse IDE-s. Integratsioon IPythoni/Jupyteriga toimib samuti hästi.

Võime öelda Spyderi kohta, et see on rohkem "maalähedane" kui teised IDE-d. Seda võib vaadelda pigem konkreetse eesmärgi jaoks mõeldud tööriistana kui peamise arenduskeskkonnana. Selle suurepärane on see, et see on tasuta, avatud lähtekoodiga ja saadaval Windowsis, macOS-is ja Linuxis.

Eelised: olete andmeteadlane, kes kasutab Anacondat.

Puudused: Kogenumad Pythoni arendajad võivad leida, et Spyder pole igapäevaseks tööks piisavalt funktsioonirikas ja nad valivad funktsioonirikkama IDE või redaktori.

Thonny

Thonnyt nimetatakse algajatele mõeldud IDE-ks. Eesti Tartu Ülikooli Informaatika Instituudi poolt kirjutatud ja hooldatud Thonny on saadaval kõigil suurematel platvormidel.

Vaikimisi installib Tonny kaasasoleva Pythoni versiooniga, nii et te ei pea midagi muud installima. Kogenud kasutajad peavad võib-olla seda sätet muutma, et IDE leiaks ja kasutaks juba installitud teeke.

Eelised: olete algaja Pythoni programmeerija ja vajate IDE-d, millega saate otse tegevusse hüpata.

Puudused: Kogenud kasutajatel pole piisavalt funktsioone ja nad asendavad sisseehitatud tõlgi. Lisaks võib IDE uudsust arvestades tekkida probleeme, millele praegu lahendust pole.

Millise siis valida?

  • Algavad Pythonistid peaksid valima midagi, millel on kõige vähem kohandamisvõimalusi. Mida vähem takistusi, seda parem;
  • Kui kasutate juba mõnda redaktorit muude ülesannete jaoks, siis vaadake koodiredaktoreid;
  • Noh, kui teil on juba mõne teise keele jaoks IDE, proovige lisada sellele Pythoni tugi.

Kas olete ka veebist huvitatud? Seejärel vaadake meie sarnast veebiarendust.