Jos ajatellaan vaikka kiintolevyn perusrakennetta niin eikös siinä ole monta (magneettikiekkoa?) päälekkäin, mutta kuitenkin tilaa luku/kirjoituspäille välissä. Jokainen kiekko on tietyn kokoinen ja eikös jokaisella kiekolla ole oma luku/kirjoituspää? No eikö olisi sitten parasta jos nopeinten haettavat tiedot sijaitsevat niin että ne on levitetty jokaiseen kiekkoon ja kun haetaan vaikka 100MB tiedostoa niin kaikki kiintolevyn päät osallistuvat etsimiseen/lukemiseen. Lisäksi tietojen pitäisi olla mahdollisimman lähellä ulkoreunaa, jotta se olisi nopeinta.
Eli pitäisi olla ohjelma, joka kirjoittaa makaavan/vähiten tarvittavan datan mahdollisimman sisäreunalle ja päinvastoin. Vaikea ilmeisesti toteuttaa kun kiintolevyissä on eroja? Lisäksi vielä vaikka se 100MB tiedosto pitäisi levittää esim. viidelle kiekolle 20MB paloina mahdollisimman ulkoreunalle, jotta nopeus olisi maksimaalinen?
Eli pitäisi olla ohjelma, joka kirjoittaa makaavan/vähiten tarvittavan datan mahdollisimman sisäreunalle ja päinvastoin. Vaikea ilmeisesti toteuttaa kun kiintolevyissä on eroja? Lisäksi vielä vaikka se 100MB tiedosto pitäisi levittää esim. viidelle kiekolle 20MB paloina mahdollisimman ulkoreunalle, jotta nopeus olisi maksimaalinen?
Vastaukset 7
Vanhimmat
Just noinhan se kiintolevy toimii.
Eikös se käyttöjärjestelmä/apuohjelmat määrää, miten ne bitit sinne tungetaan? Minun käsityksen mukaan bitit yleensä tallennetaan sinne, missä on tilaa. Mistä ohjelmat tietävät, mitkä ovat varastossa olevia tiedostoja ja mitkä pitää saada nopeinten käsiin? Eheytys tietääkseni vain järjestää tiedoston osat samaan "pötköön".
Kiintolevyissä ei vaikuta tiedonsaanti- ja siirtonopeutteen se, missä kohti levyä data on, eli onko se ulko- vai sisälaidalla. CD-levyissähän tämä pitää paikkaansa. Kiintolevyissä levyt on jaettu sektoreihin, eli tietoa tallenetaan "tiukempaan" levyn sisäurille kuin ulkourille. Eli bittitiehys vaihtelee.
Ks naantalin auringon vastaus.
Siis noin periaatteessa data tallennetaan järjestyksessä ja ihannetilanteessa useimmin tarvittu data on helpoimmin saatavissa. Mutta kuten mainitsit, data tallennetaan sinne missä on tilaa... ja tätä kutsutaan pirstaloitumiseksi.
Eheytys todella järjestää tiedostojen osat samaan "pötköön", muutamalla erillisellä eheytysohjelmalla on mahdollista järjestää datan sijainti levyllä haluttuun paikkaan i.e. alkuun - loppuun.
Apuohjelmat eivät noin yleensä kirjoittele mitään kiintolevylle omin nokkinensa, vaan ohjelmat kyselevät "varastoituja" tiedostoja käyttikseltä, joka puolestaan käyttää datan etsimiseen levyllä olevaa tilanvaraustaulukkoa. Tai siis, tämä on jälleen se ihannetilanne.
Toisaalta normaalin käyttäjän kannalta ei ole juuri merkitystä missäpäin levyä data on, pirstaloitumisaste sen sijaan vaikuttaa kovasti paljon datan hakuaikaan.
Unohdin tuon tilanvaraustaulukon kokonaan X( No se asia ei enään vaivaa, että miten ohjelmat yleensä tallentavat/lukevat tiedostoja. Mutta siis kiintolevyssä jokaisessa kiekossa on samat kohdat, joista datan saa nopeinten. Siis bittitiheys ei ole homogeeninen koko kiekon pinta-alalta? Paljonko sitten on yhden kiekon halkaisija, jos vaikka ulkoreuna päihittää sisäreunan, vaikka sisäreunalla on tiheämpää, jos pää kerkiää kulkea pitemmän matkan ulkoreunalla kiekon pyörähtäessä 360 astetta?
Siitä on ihan liian kauan... olen tarvinnut noita tietoja elämässäni tasan yhden kerran, tutkinnossa.
Viisaammat jatkakoon :-)
testi