Osioiden määrä / SATA -kiintolevy ?
Olen ihmetellyt, miksi linux -ydin ei tunnista oikein tilannetta, jossa SATA -levyllä on yli 15 osiota.
Joku on joskus vastannut, että SATA -standardi määrittelisi max. 15 osiota per levy.
MUTTA:
Käsittääkseni linux ydin komentaa itse suoraan laitteistoa (eli siis kiintolevyä).
Tämä ohjaus tapahtuu suurinpiirtein näin:
LUE: alkaen sektorinumerosta K, peräkkäisiä sektoreita N kpl, tulokset muistiin järjestyksessä muistiosoitteesta A alkaen.
tai...
KIRJOITA: alkaen sektorinumerosta K, peräkkäisiä sektoreita N kpl , data luetaan muistista järjestyksessä muistiosoitteesta A alkaen.
Tässä linux ytimen ja kiintolevyn välisessä komentojen / tietojen vaihdossahan ei edes tunneta osion käsitettä, vaan asiat tapahtuvat sektoritasolla, sillä laitteistotekniikan osalta sektori on normaalisti pienin mahdollinen datan siirtoyksikkä kiintolevyn ja prosessorin/RAM -muistin välillä (en tiedä, tukeeko kiintolevyn liitäntästandardit komentoja, joilla voisi esim. lukea viallisen sektorin siten, että epävarmat tavut voivat olla virheellistä sisältöä tai täysin lukukelvottomat korvattaisiin vaikkapa 0 -tavulla, mutta tämä ei ole olennaista tietokoneen päivittäisen käytön osalta, vaan tämä kysymys nousee mieleen kun pohditaan esim. tietojen palautukseen tehdyn erikoisohjelman toteutusta; joskus voisi olla hyödyllistä jos pystyisi lukemaan sellaistakin dataa, jonka virheettömyyttä ei voida taat esim. vioittuneen levyn takia).
Näinollen klusterit / varausyksiköt, osiot jne. ovat kokonaan ohjelmistollisia käsitteitä, joilla ei ole suoraa vastinetta laitteistotasolla eikä laitteisrton ja ohjelmiston välisessä rajapinnassa.
Ylläoleva pätee ainakin suoraan emolevyn SATA -liittimeen kytketyille kiintolevyille.
En tiedä, muuttaako asiaa, jos kiintolevy onkin ulkoisessa SATA/USB -muunnoksen tekevässä kotelossa ja kiinni emolevyn tai USB -lisäkortin USB -liittimessä. Jos joku tietää niin kertokaa !
Mutta siis laitteiston osalta (ainakaan suoraan SATA -liitettyjen levyjen osalta) ei olisi mitään estettä rajoittamattomalle määrälle osioita.
Vanhemmassa PATA -tekniikassahan ei ole tuota 15 osion rajaa, itsellänikin on eräässä vanhemmassa PC:ssä 200 GT PATA -levy, jossa 20 osiota.
Miksi siis linux rajoittaa tuon SATA -levyjen osiomäärän 15:een, vaikka moinen rajoitus ei ole mitenkään pakollinen?
Myynnissähän on ainakin 1,5 teratavun levyjä, joten tuo 15 osiota (käytännössä 14 osiota, joista 3 primääriosiota ja 11 loogista osiota) tarkoittaisi sitä, että keskimääräinen osiokoko on vähintään 1500 GT / 14 = 107,1 GT.
Ja jos haluaa muutaman pienemmän osion, niin vastaavasti, jos halutaan koko levytila hyötykäyttöön, niin jonkin muun osion on oltava tätäkin suurempi, jotta keskiarvo olisi tuo 107,1 GT per osio.
huom: loogisten osioiden olemassaolo vie yhden primääriosiopaikan 4:stä mahdollisesta ns. extended -osiolle (jonka sisällä sijaitsevat nämä loogiset osiot) jolloin primäärisiä dataosioita voi olla max. 3 kpl, ja loogisia sitten sda5 - sda15, eli 11 kpl.
Olen ihmetellyt, miksi linux -ydin ei tunnista oikein tilannetta, jossa SATA -levyllä on yli 15 osiota.
Joku on joskus vastannut, että SATA -standardi määrittelisi max. 15 osiota per levy.
MUTTA:
Käsittääkseni linux ydin komentaa itse suoraan laitteistoa (eli siis kiintolevyä).
Tämä ohjaus tapahtuu suurinpiirtein näin:
LUE: alkaen sektorinumerosta K, peräkkäisiä sektoreita N kpl, tulokset muistiin järjestyksessä muistiosoitteesta A alkaen.
tai...
KIRJOITA: alkaen sektorinumerosta K, peräkkäisiä sektoreita N kpl , data luetaan muistista järjestyksessä muistiosoitteesta A alkaen.
Tässä linux ytimen ja kiintolevyn välisessä komentojen / tietojen vaihdossahan ei edes tunneta osion käsitettä, vaan asiat tapahtuvat sektoritasolla, sillä laitteistotekniikan osalta sektori on normaalisti pienin mahdollinen datan siirtoyksikkä kiintolevyn ja prosessorin/RAM -muistin välillä (en tiedä, tukeeko kiintolevyn liitäntästandardit komentoja, joilla voisi esim. lukea viallisen sektorin siten, että epävarmat tavut voivat olla virheellistä sisältöä tai täysin lukukelvottomat korvattaisiin vaikkapa 0 -tavulla, mutta tämä ei ole olennaista tietokoneen päivittäisen käytön osalta, vaan tämä kysymys nousee mieleen kun pohditaan esim. tietojen palautukseen tehdyn erikoisohjelman toteutusta; joskus voisi olla hyödyllistä jos pystyisi lukemaan sellaistakin dataa, jonka virheettömyyttä ei voida taat esim. vioittuneen levyn takia).
Näinollen klusterit / varausyksiköt, osiot jne. ovat kokonaan ohjelmistollisia käsitteitä, joilla ei ole suoraa vastinetta laitteistotasolla eikä laitteisrton ja ohjelmiston välisessä rajapinnassa.
Ylläoleva pätee ainakin suoraan emolevyn SATA -liittimeen kytketyille kiintolevyille.
En tiedä, muuttaako asiaa, jos kiintolevy onkin ulkoisessa SATA/USB -muunnoksen tekevässä kotelossa ja kiinni emolevyn tai USB -lisäkortin USB -liittimessä. Jos joku tietää niin kertokaa !
Mutta siis laitteiston osalta (ainakaan suoraan SATA -liitettyjen levyjen osalta) ei olisi mitään estettä rajoittamattomalle määrälle osioita.
Vanhemmassa PATA -tekniikassahan ei ole tuota 15 osion rajaa, itsellänikin on eräässä vanhemmassa PC:ssä 200 GT PATA -levy, jossa 20 osiota.
Miksi siis linux rajoittaa tuon SATA -levyjen osiomäärän 15:een, vaikka moinen rajoitus ei ole mitenkään pakollinen?
Myynnissähän on ainakin 1,5 teratavun levyjä, joten tuo 15 osiota (käytännössä 14 osiota, joista 3 primääriosiota ja 11 loogista osiota) tarkoittaisi sitä, että keskimääräinen osiokoko on vähintään 1500 GT / 14 = 107,1 GT.
Ja jos haluaa muutaman pienemmän osion, niin vastaavasti, jos halutaan koko levytila hyötykäyttöön, niin jonkin muun osion on oltava tätäkin suurempi, jotta keskiarvo olisi tuo 107,1 GT per osio.
huom: loogisten osioiden olemassaolo vie yhden primääriosiopaikan 4:stä mahdollisesta ns. extended -osiolle (jonka sisällä sijaitsevat nämä loogiset osiot) jolloin primäärisiä dataosioita voi olla max. 3 kpl, ja loogisia sitten sda5 - sda15, eli 11 kpl.
Vastaukset 2
Vanhimmat
http://linux.derkeiler.com/Mailing-Lists/Fedora/2006-10/msg03963.html
Moi.
Ettet ny vaan olisi sässinyt osiotauluasi pahemman kerran?
T: /dev/sdc22 and working