Különbség a szimmetrikus és az aszimmetrikus multiprocesszálás között
Tartalom
- Összehasonlító táblázat
- A szimmetrikus multiprocessing meghatározása
- Az aszimmetrikus multiprocessing meghatározása
- Következtetés:
Kétféle multiprocessing létezik, a szimmetrikus multiprocessing és az aszimmetrikus multiprocessing. A többprocessziós rendszernek egynél több processzora van, és egyszerre több folyamatot is végrehajthatnak. A szimmetrikus többprocesszoros eljárásban a processzorok ugyanazt a memóriát osztják. Az aszimmetrikus többprocesszoros eljárásban van egy master processzor, amely a rendszer adatszerkezetét vezérli. A szimmetrikus és az aszimmetrikus multiprocessing közötti elsődleges különbség a Szimmetrikus multiprocessing a rendszer összes processzora futtatja az operációs rendszert. De Aszimmetrikus multiprocessing csak a főprocesszor által futtatott feladat az operációs rendszerben.
A Symmetric Multiprocessor és az Asymmetric Multiprocessor megkülönböztethető néhány olyan ponton is, amelyekről az alább bemutatott összehasonlítási táblázat foglalkozik.
- Összehasonlító táblázat
- Meghatározás
- Főbb különbségek
- Következtetés
Összehasonlító táblázat
Az összehasonlítás alapja | Szimmetrikus multiprocessing | Aszimmetrikus multiprocessing |
---|---|---|
Alapvető | Minden processzor futtatja a feladatokat az operációs rendszerben. | Az operációs rendszer feladatait csak a főprocesszor futtathatja. |
Folyamat | A processzor a folyamatokat egy közös készenléti sorból veszi, vagy lehet, hogy minden processzornak van egy privát készenléti sor. | A főprocesszor folyamatokat rendel hozzá a slave processzorokhoz, vagy vannak előre definiált folyamatok. |
Építészet | A Symmetric Multiprocessing összes processzorának azonos architektúrája van. | Az összes aszimmetrikus többprocesszoros processzor azonos vagy eltérő architektúrájú lehet. |
közlés | Minden processzor megosztott memória segítségével kommunikál egy másik processzorral. | A processzoroknak nem kell kommunikálniuk, mivel a főprocesszor irányítja őket. |
Kudarc | Ha egy processzor meghibásodik, a rendszer számítási kapacitása csökken. | Ha egy mesterprocesszor meghibásodik, akkor a szolga a főprocesszorhoz fordul a végrehajtás folytatása érdekében. Ha egy slave processzor meghibásodik, akkor a feladatot más processzorokra váltja. |
Könnyű | A szimmetrikus multiprocesszor összetett, mivel a processzorokat szinkronizálni kell a terhelési egyensúly fenntartása érdekében. | Az aszimmetrikus multiprocesszor egyszerű, mivel a masterprocesszor hozzáfér az adatszerkezethez. |
A szimmetrikus multiprocessing meghatározása
Szimmetrikus multiprocessing az egyik, amelyben az összes processzor futtatja a feladatokat az operációs rendszerben. Megvan nincs mester-rabszolga kapcsolat, mint aszimmetrikus multiprocessing. Az összes processzor itt kommunikál a megosztott memória.
A processzorok a közös készenléti sorból indítják el a folyamatok végrehajtását. Mindegyik processzornak rendelkezhet saját készenléti folyamatok sorával a végrehajtáshoz. Az ügyfeleknek gondoskodniuk kell róla ütemező hogy két processzor nem hajtja végre ugyanazt a folyamatot.
A szimmetrikus multiprocessing-nek megfelelő terhelés elosztás, jobb hibatűrés és csökkenti a CPU esélyét is palacknyak. Ez összetett mivel a memória megoszlik az összes processzor között. A szimmetrikus többprocesszálásnál a processzor meghibásodása eredményezhet csökkent számítási kapacitás.
Az aszimmetrikus multiprocessing meghatározása
Aszimmetrikus multiprocessing rendelkezik a mesterszolga kapcsolat a feldolgozók között. Van egy master processzor, amely a fennmaradó slave processzort kezeli. A mesterprocesszor a szolga processzorra osztja a folyamatokat, vagy lehet, hogy végrehajtanak egy előre meghatározott feladatot.
A főprocesszor vezérli a adatszerkezet. A ütemezés folyamatok I / O a feldolgozást és az egyéb rendszer tevékenységeket a főprocesszor.
Ha egy mesterprocesszor meghibásodik, akkor az egyik processzort a szolgaprocesszor közül a mesterprocesszornak kell végrehajtania a végrehajtás folytatására. Ha egy slave processzor meghibásodik, a másik slave processzor veszi át a feladatát. Az aszimmetrikus multiprocessing egyszerű mivel csak egy processzor kezeli az adatszerkezetet és a rendszer összes tevékenységét.
- A szimmetrikus és aszimmetrikus többprocesszálás között a legjobban megkülönböztethető pont az, hogy az operációs rendszerben a feladatokat csak az aszimmetrikus multiprocesszálás főprocesszora kezeli. Másrészt a szimmetrikus többprocesszoros processzorok futtatják a feladatokat az operációs rendszerben.
- Szimmetrikus többfolyamatos feldolgozásnál minden processzornak megvan a saját készenléti folyamatainak váró sora, vagy egy közös készenléti sorból is elvégezheti a folyamatokat. De aszimmetrikus többfolyamatos feldolgozás esetén a mesterprocesszor a szolgaprocesszorokhoz rendeli a folyamatokat.
- A Symmetric Multiprocessing összes processzorának azonos architektúrája van. De az aszimmetrikus többprocesszoros processzorok szerkezete eltérhet.
- A szimmetrikus többprocesszoros processzorok a megosztott memória segítségével kommunikálnak egymással. Az aszimmetrikus többprocesszoros processzoroknak azonban nem kell kommunikálniuk egymással, mivel a főprocesszor irányítja őket.
- Abban az esetben, ha a mesterprocesszor meghibásodik, a szolga processzort főprocesszorra fordítják a végrehajtás folytatásához. Ha azonban a szimmetrikus többprocesszoros processzor meghiúsul, akkor a rendszer számítási kapacitása csökken.
- Az aszimmetrikus multiprocesszor egyszerű, mivel csak az master processzor fér hozzá az adatszerkezethez, míg a szimmetrikus multiprocesszor összetett, mivel az összes processzornak szinkronizálásban kell működnie.
Következtetés:
A multiprocesszorok megnövelik a rendszer sebességét, mivel egyszerre több folyamat is végrehajtható. Az aszimmetrikus multiprocessing egyszerű, csak egy processzor (master) férhet hozzá az adatszerkezethez. Míg a szimmetrikus többprocesszálás bonyolult, mivel az adatszerkezet megoszlik az összes processzor között, és az összes processzornak szinkronizálásban kell működnie.