ebook img

sistemas_operativos.pdf (PDFy mirror) PDF

9.6 MB·
by  
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview sistemas_operativos.pdf (PDFy mirror)

FUNDAMENTOSDESISTEMASOPERATIVOS Compilación:2014/12/04-16:13:05Commit:356345b UNIVERSIDADNACIONALAUTÓNOMADEMÉXICO Dr.JoséNarroRobles Rector Dr.EduardoBárzanaGarcía SecretarioGeneral Lic.EnriquedelValBlanco SecretarioAdministrativo Dra.EstelaMoralesCampos CoordinadoradeHumanidades INSTITUTODEINVESTIGACIONESECONÓMICAS Dra.VerónicaVillarespeReyes Directora Mtra.BereniceRamírezLópez SecretariaAcadémica Sr.AristeoTovíasGarcía SecretarioTécnico Lic.MaríaSoledadSimónPinero JefadelDepartamentodeEdiciones FACULTADDEINGENIERÍA Mtro.GonzaloGuerreroZepeda Director Ing.GonzaloLópezdeHaro SecretarioGeneral Dr.FranciscoJavierGarcíaUgalde JefedelaDivisióndeIngenieríaEléctrica Mtra.MaríaCuairánRuidíaz JefadelDepartamentodeApoyoEditorial FUNDAMENTOS DE SISTEMAS OPERATIVOS GunnarWolf EstebanRuiz FedericoBergero ErwinMeza UNIVERSIDADNACIONALAUTÓNOMADEMÉXICO INSTITUTODEINVESTIGACIONESECONÓMICAS FACULTADDEINGENIERÍA 4 Índice general Presentación 11 1. Introducción 17 1.1. ¿Quéesunsistemaoperativo?. . . . . . . . . . . . . . . . . . . . 17 1.1.1. ¿Porquéestudiarlossistemasoperativos? . . . . . . . . 17 1.2. Funcionesyobjetivosdelossistemasoperativos . . . . . . . . . 18 1.3. Evolucióndelossistemasoperativos . . . . . . . . . . . . . . . . 19 1.3.1. Procesoporlotes(batchprocessing) . . . . . . . . . . . . . 19 1.3.2. Sistemasenlotescondispositivosdecarga(spool) . . . . 20 1.3.3. Sistemasmultiprogramados . . . . . . . . . . . . . . . . . 20 1.3.4. Sistemasdetiempocompartido. . . . . . . . . . . . . . . 21 1.4. Ydelladodelascomputadoraspersonales . . . . . . . . . . . . 22 1.4.1. Primerossistemasparaentusiastas . . . . . . . . . . . . . 22 1.4.2. Larevolucióndelos8bits . . . . . . . . . . . . . . . . . . 23 1.4.3. Lacomputadoraparafines“serios”:lafamiliaPC . . . . 23 1.4.4. Elimpactodelentornográfico(WIMP) . . . . . . . . . . . 24 1.4.5. Convergenciadelosdosgrandesmercados . . . . . . . . 25 1.5. Dispositivosmóviles . . . . . . . . . . . . . . . . . . . . . . . . . 27 1.5.1. Reseñahistórica . . . . . . . . . . . . . . . . . . . . . . . . 27 1.5.2. Característicasdiferenciadoras . . . . . . . . . . . . . . . 31 1.6. Seguridadinformática . . . . . . . . . . . . . . . . . . . . . . . . 35 1.6.1. Códigomalicioso . . . . . . . . . . . . . . . . . . . . . . . 36 1.7. Organizacióndelossistemasoperativos . . . . . . . . . . . . . . 37 1.8. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 1.8.1. Preguntasdeautoevaluación . . . . . . . . . . . . . . . . 39 1.8.2. Lecturasrelacionadas . . . . . . . . . . . . . . . . . . . . 41 2. Relaciónconelhardware 43 2.1. Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 2.2. Unidaddeprocesamiento . . . . . . . . . . . . . . . . . . . . . . 43 2.2.1. Jerarquíadealmacenamiento . . . . . . . . . . . . . . . . 44 2.2.2. Interrupcionesyexcepciones . . . . . . . . . . . . . . . . 46 5 6 ÍNDICEGENERAL 2.3. Lasterminales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 2.4. Dispositivosdealmacenamiento . . . . . . . . . . . . . . . . . . 49 2.5. Relojesytemporizadores . . . . . . . . . . . . . . . . . . . . . . . 50 2.6. Canalesypuentes . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 2.6.1. Contención . . . . . . . . . . . . . . . . . . . . . . . . . . 51 2.6.2. Accesodirectoamemoria(DMA) . . . . . . . . . . . . . . 53 2.7. Interfazdelsistemaoperativo:llamadasalsistema . . . . . . . . 54 2.7.1. Llamadasalsistema,arquitecturasyAPI . . . . . . . . . 55 2.8. Referenciaaloscomponentes . . . . . . . . . . . . . . . . . . . . 57 2.9. Cuandodoscabezaspiensanmejorqueuna . . . . . . . . . . . . 58 2.9.1. Multiprocesamiento . . . . . . . . . . . . . . . . . . . . . 58 2.9.2. Cómputodistribuido . . . . . . . . . . . . . . . . . . . . . 61 2.9.3. AmdahlyGustafson:¿quéesperardelparalelismo? . . . 63 2.10.Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 2.10.1. Preguntasdeautoevaluación . . . . . . . . . . . . . . . . 66 2.10.2. Temasdeinvestigaciónsugeridos . . . . . . . . . . . . . 67 2.10.3. Lecturasrelacionadas . . . . . . . . . . . . . . . . . . . . 68 3. Administracióndeprocesos 69 3.1. Conceptoyestadosdeunproceso . . . . . . . . . . . . . . . . . 69 3.1.1. Estadosdeunproceso . . . . . . . . . . . . . . . . . . . . 69 3.1.2. Informaciónasociadaaunproceso . . . . . . . . . . . . . 70 3.2. Procesosehilos . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 3.2.1. Loshilosyelsistemaoperativo . . . . . . . . . . . . . . . 72 3.2.2. Patronesdetrabajoconhilos . . . . . . . . . . . . . . . . 72 3.3. Concurrencia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75 3.3.1. Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . 75 3.3.2. Problema:eljardínornamental . . . . . . . . . . . . . . . 76 3.3.3. Mecanismosdesincronización . . . . . . . . . . . . . . . 86 3.3.4. Problemaproductor-consumidor . . . . . . . . . . . . . . 95 3.3.5. Bloqueosmutuoseinanición . . . . . . . . . . . . . . . . 97 3.3.6. Problemadeloslectoresylosescritores . . . . . . . . . . 98 3.3.7. Lacenadelosfilósofos . . . . . . . . . . . . . . . . . . . . 100 3.3.8. Losfumadorescompulsivos. . . . . . . . . . . . . . . . . 102 3.3.9. Otrosmecanismos . . . . . . . . . . . . . . . . . . . . . . 105 3.4. Bloqueosmutuos . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 3.4.1. Prevencióndebloqueos . . . . . . . . . . . . . . . . . . . 113 3.4.2. Evasióndebloqueos . . . . . . . . . . . . . . . . . . . . . 115 3.4.3. Detecciónyrecuperacióndebloqueos . . . . . . . . . . . 120 3.4.4. Algoritmodelavestruz . . . . . . . . . . . . . . . . . . . 124 3.5. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126 3.5.1. Preguntasdeautoevaluación . . . . . . . . . . . . . . . . 126 3.5.2. Temasdeinvestigaciónsugeridos . . . . . . . . . . . . . 128 3.5.3. Lecturasrelacionadas . . . . . . . . . . . . . . . . . . . . 129 ÍNDICEGENERAL 7 4. Planificacióndeprocesos 131 4.1. Tiposdeplanificación. . . . . . . . . . . . . . . . . . . . . . . . . 131 4.1.1. Tiposdeproceso . . . . . . . . . . . . . . . . . . . . . . . 133 4.1.2. Midiendolarespuesta . . . . . . . . . . . . . . . . . . . . 134 4.2. Algoritmosdeplanificación . . . . . . . . . . . . . . . . . . . . . 137 4.2.1. Objetivosdelaplanificación . . . . . . . . . . . . . . . . 138 4.2.2. Primerollegado,primeroservido(FCFS). . . . . . . . . . 139 4.2.3. Ronda(RoundRobin) . . . . . . . . . . . . . . . . . . . . . 140 4.2.4. Elprocesomáscortoacontinuación(SPN,shortestprocess next) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142 4.2.5. Rondaegoísta(SRR,selfishroundrobin) . . . . . . . . . . . 144 4.2.6. Retroalimentaciónmultinivel(FB,multilevelfeedback) . 145 4.2.7. Lotería . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148 4.2.8. Esquemashíbridos . . . . . . . . . . . . . . . . . . . . . . 149 4.2.9. Resumiendo . . . . . . . . . . . . . . . . . . . . . . . . . . 151 4.3. Planificacióndehilos . . . . . . . . . . . . . . . . . . . . . . . . . 154 4.3.1. LoshilosPOSIX(pthreads) . . . . . . . . . . . . . . . . 155 4.4. Planificacióndemultiprocesadores . . . . . . . . . . . . . . . . . 156 4.4.1. Afinidadaprocesador . . . . . . . . . . . . . . . . . . . . 156 4.4.2. Balanceodecargas . . . . . . . . . . . . . . . . . . . . . . 157 4.4.3. Colasdeprocesos:¿unaovarias? . . . . . . . . . . . . . . 158 4.4.4. Procesadoresconsoporteahiloshardware . . . . . . . . . 158 4.5. Tiemporeal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160 4.5.1. Tiemporealduroysuave . . . . . . . . . . . . . . . . . . 161 4.5.2. Sistemaoperativointerrumpible(prevenible) . . . . . . . 162 4.5.3. Inversióndeprioridades . . . . . . . . . . . . . . . . . . . 162 4.6. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163 4.6.1. Preguntasdeautoevaluación . . . . . . . . . . . . . . . . 163 4.6.2. Temasdeinvestigaciónsugeridos . . . . . . . . . . . . . 164 4.6.3. Lecturasrelacionadas . . . . . . . . . . . . . . . . . . . . 165 5. Administracióndememoria 167 5.1. Funcionesyoperaciones . . . . . . . . . . . . . . . . . . . . . . . 167 5.1.1. Espaciodedireccionamiento . . . . . . . . . . . . . . . . 167 5.1.2. Hardware:launidaddemanejodememoria(MMU) . . . 168 5.2. kb*),elregistrobasecontendría504214,yelregistrolímite . . . . 169 5.3. kb*),laMMUlanzaríaunaexcepciónotrampainterrumpiendoel 169 5.3.1. Lamemoriacaché . . . . . . . . . . . . . . . . . . . . . . . 170 5.3.2. Elespacioenmemoriadeunproceso . . . . . . . . . . . 171 5.3.3. Resolucióndedirecciones . . . . . . . . . . . . . . . . . . 173 5.4. Asignacióndememoriacontigua . . . . . . . . . . . . . . . . . . 174 5.4.1. Particióndelamemoria . . . . . . . . . . . . . . . . . . . 174 5.5. Segmentación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178 5.5.1. Permisos . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179 8 ÍNDICEGENERAL 5.5.2. Intercambioparcial . . . . . . . . . . . . . . . . . . . . . . 180 5.5.3. Ejemplificando . . . . . . . . . . . . . . . . . . . . . . . . 181 5.6. Paginación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182 5.6.1. Tamañodelapágina . . . . . . . . . . . . . . . . . . . . . 184 5.6.2. Almacenamientodelatabladepáginas . . . . . . . . . . 185 5.6.3. Memoriacompartida . . . . . . . . . . . . . . . . . . . . . 189 5.7. Memoriavirtual . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191 5.7.1. Paginaciónsobredemanda . . . . . . . . . . . . . . . . . 193 5.7.2. Rendimiento. . . . . . . . . . . . . . . . . . . . . . . . . . 195 5.7.3. Reemplazodepáginas . . . . . . . . . . . . . . . . . . . . 196 5.7.4. Asignacióndemarcos . . . . . . . . . . . . . . . . . . . . 205 5.7.5. Hiperpaginación . . . . . . . . . . . . . . . . . . . . . . . 208 5.8. Consideracionesdeseguridad . . . . . . . . . . . . . . . . . . . . 211 5.8.1. Desbordamientosdebuffer(bufferoverflows) . . . . . . . 211 5.8.2. Ligadoestáticoydinámicodebibliotecas . . . . . . . . . 218 5.9. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221 5.9.1. Preguntasdeautoevaluación . . . . . . . . . . . . . . . . 221 5.9.2. Temasdeinvestigaciónsugeridos . . . . . . . . . . . . . 223 5.9.3. Lecturasrelacionadas . . . . . . . . . . . . . . . . . . . . 225 6. Organizacióndearchivos 227 6.1. Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227 6.2. Conceptodearchivo . . . . . . . . . . . . . . . . . . . . . . . . . 229 6.2.1. Operacionesconarchivos . . . . . . . . . . . . . . . . . . 229 6.2.2. Tablasdearchivosabiertos . . . . . . . . . . . . . . . . . 231 6.2.3. Accesoconcurrente:bloqueodearchivos . . . . . . . . . 232 6.2.4. Tiposdearchivo . . . . . . . . . . . . . . . . . . . . . . . 233 6.2.5. Estructuradelosarchivosymétodosdeacceso. . . . . . 235 6.2.6. Archivosespeciales . . . . . . . . . . . . . . . . . . . . . . 238 6.2.7. Transferenciasorientadasabloques . . . . . . . . . . . . 239 6.3. Organizacióndearchivos . . . . . . . . . . . . . . . . . . . . . . 240 6.3.1. Evolucióndelconceptodedirectorio . . . . . . . . . . . . 240 6.3.2. Operacionescondirectorios . . . . . . . . . . . . . . . . . 246 6.3.3. Montajededirectorios . . . . . . . . . . . . . . . . . . . . 249 6.4. Controldeacceso . . . . . . . . . . . . . . . . . . . . . . . . . . . 251 6.4.1. SistemasFAT . . . . . . . . . . . . . . . . . . . . . . . . . . 252 6.4.2. ModelotradicionalUnix . . . . . . . . . . . . . . . . . . . 253 6.4.3. Listasdecontroldeacceso. . . . . . . . . . . . . . . . . . 254 6.5. Sistemasdearchivosremotos . . . . . . . . . . . . . . . . . . . . 256 6.5.1. NetworkFileSystem(NFS) . . . . . . . . . . . . . . . . . 256 6.5.2. CommonInternetFileSystem(CIFS) . . . . . . . . . . . . 257 6.5.3. Sistemasdearchivosdistribuidos:AndrewFileSystem . 259 6.6. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 260 6.6.1. Preguntasdeautoevaluación . . . . . . . . . . . . . . . . 260 ÍNDICEGENERAL 9 6.6.2. Temasdeinvestigaciónsugeridos . . . . . . . . . . . . . 261 6.6.3. Lecturasrelacionadas . . . . . . . . . . . . . . . . . . . . 262 7. Sistemasdearchivos 263 7.1. Plasmandolaestructuraeneldispositivo . . . . . . . . . . . . . 263 7.1.1. Conceptosparalaorganización . . . . . . . . . . . . . . . 263 7.1.2. Diferentessistemasdearchivos . . . . . . . . . . . . . . . 265 7.1.3. Elvolumen . . . . . . . . . . . . . . . . . . . . . . . . . . 266 7.1.4. Eldirectorioylosi-nodos. . . . . . . . . . . . . . . . . . . 267 7.1.5. Compresiónydesduplicación . . . . . . . . . . . . . . . . . 273 7.1.6. Sistemasdearchivosvirtuales . . . . . . . . . . . . . . . 276 7.2. Esquemasdeasignacióndeespacio. . . . . . . . . . . . . . . . . 277 7.2.1. Asignacióncontigua . . . . . . . . . . . . . . . . . . . . . 278 7.2.2. Asignaciónligada. . . . . . . . . . . . . . . . . . . . . . . 279 7.2.3. Asignaciónindexada . . . . . . . . . . . . . . . . . . . . . 280 7.2.4. LastablasenFAT . . . . . . . . . . . . . . . . . . . . . . . 283 7.3. Fallosyrecuperación . . . . . . . . . . . . . . . . . . . . . . . . . 285 7.3.1. Datosymetadatos . . . . . . . . . . . . . . . . . . . . . . 287 7.3.2. Verificacióndelaintegridad. . . . . . . . . . . . . . . . . 288 7.3.3. Actualizacionessuaves. . . . . . . . . . . . . . . . . . . . 288 7.3.4. Sistemasdearchivoconbitácora . . . . . . . . . . . . . . 290 7.3.5. Sistemasdearchivosestructuradosenbitácora . . . . . . 291 7.4. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292 7.4.1. Preguntasdeautoevaluación . . . . . . . . . . . . . . . . 292 7.4.2. Temasdeinvestigaciónsugeridos . . . . . . . . . . . . . 293 7.4.3. Lecturasrelacionadas . . . . . . . . . . . . . . . . . . . . 293 A. Softwarelibreylicenciamiento 297 A.1. Softwarelibre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 297 A.1.1. FreeasinFreedom:elproyectoGNU . . . . . . . . . . . . . 297 A.1.2. ElsoftwarelibreantesdeGNU . . . . . . . . . . . . . . . 298 A.1.3. Elsoftwarepropietariocomoanomalíahistórica . . . . . . 299 A.1.4. Esquemaslibresdelicenciamiento . . . . . . . . . . . . . 300 A.2. Obrasculturaleslibres . . . . . . . . . . . . . . . . . . . . . . . . 302 A.2.1. LafamiliadelicenciasCreativeCommons. . . . . . . . . . 303 A.3. Ellicenciamientoempleadoparalapresenteobra . . . . . . . . 305 A.4. Lecturasrelacionadas . . . . . . . . . . . . . . . . . . . . . . . . . 306 B. Virtualización 309 B.1. Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309 B.2. Emulación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 310 B.2.1. Emulandoarquitecturasinexistentes . . . . . . . . . . . . 311 B.2.2. Deloabstractoaloconcreto . . . . . . . . . . . . . . . . . 313 B.2.3. ¿Emulaciónosimulación? . . . . . . . . . . . . . . . . . . 314 10 ÍNDICEGENERAL B.3. Virtualizaciónasistidaporhardware . . . . . . . . . . . . . . . . 315 B.3.1. Elhipervisor. . . . . . . . . . . . . . . . . . . . . . . . . . 316 B.3.2. Virtualizaciónasistidaporhardwareenx86. . . . . . . . 316 B.4. Paravirtualización . . . . . . . . . . . . . . . . . . . . . . . . . . . 318 B.4.1. Paravirtualizaciónysoftwarelibre . . . . . . . . . . . . . 319 B.4.2. Paravirtualizacióndedispositivos . . . . . . . . . . . . . 319 B.5. Contenedores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 320 B.6. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 322 B.6.1. Preguntasdeautoevaluación . . . . . . . . . . . . . . . . 322 B.6.2. Temasdeinvestigaciónsugeridos . . . . . . . . . . . . . 324 B.6.3. Lecturasrelacionadas . . . . . . . . . . . . . . . . . . . . 324 C. Elmediofísicoyelalmacenamiento 327 C.1. Elmediofísico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327 C.1.1. Discosmagnéticosrotativos . . . . . . . . . . . . . . . . . 327 C.1.2. Almacenamientoenestadosólido . . . . . . . . . . . . . 335 C.2. RAID:Másalládeloslímitesfísicos . . . . . . . . . . . . . . . . . 339 C.2.1. RAIDnivel0:divisiónenfranjas . . . . . . . . . . . . . . . 340 C.2.2. RAIDnivel1:espejo. . . . . . . . . . . . . . . . . . . . . . 341 C.2.3. Losniveles2,3y4deRAID . . . . . . . . . . . . . . . . . 342 C.2.4. RAIDnivel5:paridaddivididaporbloques . . . . . . . . 342 C.2.5. RAIDnivel6:paridadporredundanciaP+Q . . . . . . . 344 C.2.6. NivelescombinadosdeRAID . . . . . . . . . . . . . . . . 345 C.3. Manejoavanzadodevolúmenes . . . . . . . . . . . . . . . . . . 346 C.3.1. LVM:elGestordeVolúmenesLógicos . . . . . . . . . . . 347 C.3.2. ZFS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348 C.4. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 349 C.4.1. Preguntasdeautoevaluación . . . . . . . . . . . . . . . . 349 C.4.2. Temasdeinvestigaciónsugeridos . . . . . . . . . . . . . 349 C.4.3. Lecturasrelacionadas . . . . . . . . . . . . . . . . . . . . 349

See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.