Seguimos buscando a Arshak. Ayudanos compartiendo!
Encuesta no oficial de docentes
Resultados de la encuesta no oficial de docentes
Probaste el SIGA Helper?

Donar $100 Donar $200 Donar $500 Donar mensualmente


Enviar respuesta 
 
Calificación:
  • 0 votos - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5
Buscar en el tema
[CONSULTA] Final Sistemas Operativos 31/07/2012
Autor Mensaje
AGUSTIN27 Sin conexión
Secretario de la SAE
INGENIEROOO :)
******

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 642
Agradecimientos dados: 20
Agradecimientos: 114 en 25 posts
Registro en: Feb 2010
Mensaje: #1
[CONSULTA] Final Sistemas Operativos 31/07/2012 Finales Sistemas Operativos
Hola chicos, posteo este final para ver sí alguno me puede dar una mano con el ejercicio número 2 de la práctica.
No entiendo como hace para llegar de una dirección lógica a física utilizando segmentación, por lo tanto, no puedo deducir como obtiene los datos del proceso. No sé como hacer para sacar el límite del segmento cero que será el mismo que el comienzo del segmento uno.
Por otro lado, el límite del segmento 2 será FFFF dado que es la última dirección física, pero todo lo demás no sé como obtenerlo.

Alguien me da una mano?

Abrazo!


Archivo(s) adjuntos Imagen(es)
   
15-07-2013 18:32
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
[-] AGUSTIN27 recibio 2 Gracias por este post
matiasGorosito (14-12-2013), CarooLina (01-01-2015)
Agro Sin conexión
Presidente del CEIT
Su marca puede estar aquí
**********

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 6.760
Agradecimientos dados: 252
Agradecimientos: 888 en 293 posts
Registro en: Jul 2008
Facebook Twitter
Mensaje: #2
RE: [CONSULTA] Final Sistemas Operativos 31/07/2012
Buenas, fijate que traduciendo la primera direccion y sabiendo que es el segmento 1 obtenes el tamaño del offset y la direccion. Despues el resto del ejercicio es restarle el offset a la direccion fisica para obtener la base del segmento.

[Imagen: digitalizartransparent.png]
16-07-2013 00:50
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
AGUSTIN27 Sin conexión
Secretario de la SAE
INGENIEROOO :)
******

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 642
Agradecimientos dados: 20
Agradecimientos: 114 en 25 posts
Registro en: Feb 2010
Mensaje: #3
RE: [CONSULTA] Final Sistemas Operativos 31/07/2012
Adro, gracias por la ayuda pero la verdad es que no estoy entendiendo para nada bien el tema lo cual me da mucha bronca.
1)Se asume que todos los segmentos tienen la misma longitud? Si son fijos, como se cuantos segmentos tengo y cual es la longitud de los mismos?
2)Apunta a que me queda una tabla donde indique la base y el límite del segmento 0 , 1 y 2 mas alla que el 0 y el 1 esten contiguos?
3)La traducción de direccion logica a fisica no entiendo como la hace, porque si tengo la direccion
200Ah en hexadecimal, en binario es 0010 0000 0000 1010 , los primeros 4 bits que son los mas significativos me hacen referencia a que el segmento es el numero 2, no entiendo porque entonces dice que hace referencia al segmento numero 1, eso por empezar.
Y una vez que obtengo el desplazamiento que a mi me da 10 a que direccion fisica se lo tengo que sumar?

con el resto de las direcciones logicas que me dan la direccion fisica y a eso le deberia sumar el offset que es lo que me indica a mi en que segmento estoy parado?

Perdon por hacer tantas preguntas pero por mas que lo lea, nunca hice un ejercicio de esto en el libro no hay y no se de donde obtener mas informacion, en la cursada nunca me dieron un solo ejercicio de esto.

Espero que me puedas ayudar a entenderlo y resolverlo como pueda.

Gracias
16-07-2013 17:25
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
Agro Sin conexión
Presidente del CEIT
Su marca puede estar aquí
**********

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 6.760
Agradecimientos dados: 252
Agradecimientos: 888 en 293 posts
Registro en: Jul 2008
Facebook Twitter
Mensaje: #4
RE: [CONSULTA] Final Sistemas Operativos 31/07/2012
Buenas, los segmentos no tienen porque tener el mismo tamaño. Pero si sus direcciones. Esto quiere decir que si identificas cuantos bits usas para el segmento y cuantos para el offset, podes hacer las conversiones. No se porque tomaste que los 4 bits mas significativos son los del numero de segmento...

Pensa que 0010 0000 0000 1010 apunta al segmento 1. Fijate si eso te ayuda a deducir cuantos bits se usan para cada cosa...

[Imagen: digitalizartransparent.png]
16-07-2013 17:29
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
AGUSTIN27 Sin conexión
Secretario de la SAE
INGENIEROOO :)
******

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 642
Agradecimientos dados: 20
Agradecimientos: 114 en 25 posts
Registro en: Feb 2010
Mensaje: #5
RE: [CONSULTA] Final Sistemas Operativos 31/07/2012
Los 4 bits más significativos son los del numero de segmento lo extraje del libro de stallings..
Esta bien decir que sí tengo 0010 0000 0000 1010 los primeros 4 bits o sea "0010" significa 2^1=2º posicion
La primera posición apunta al segmento 0
La segunda posición apunta al segmento 1 ?

A partir de ahi me quedarían 12 bits para el offset.. Es decir que 2^4 x 2^12 = 64 kb . Tendría 16 segmentos de 4096 bytes.
Con esos 12 bits saco el offset de la primer dirección lógica que sería: 0000 0000 1010 en binario , 10 en decimal.
Hasta acá esta bien? Eso significaría que el primer segmento empieza en la posición 10 en decimal?
Esos 10 en decimal, se lo tengo que restar a la direccion fisica en decimal que me dan para hallar la base de los 3 segmentos?
16-07-2013 19:45
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
Agro Sin conexión
Presidente del CEIT
Su marca puede estar aquí
**********

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 6.760
Agradecimientos dados: 252
Agradecimientos: 888 en 293 posts
Registro en: Jul 2008
Facebook Twitter
Mensaje: #6
RE: [CONSULTA] Final Sistemas Operativos 31/07/2012
No, no. Tendria que leer ese parrafo en particular, para ver que no sea un ejemplo o una implementacion particular. En principio podrias usar mas o menos bits para el numero de segmento y para el offset.

En este caso si miras el 0010....., la unica forma de que eso sea el segmento 1 es que hagas el corte en 001|0...
Entonces los tres primeros bits son para el segmento y el resto para el offset. Restando los offsets (acordate que en ambas direcciones siempre coinciden) vas a obtener la base de los segmentos ;)

[Imagen: digitalizartransparent.png]
16-07-2013 20:57
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
AGUSTIN27 Sin conexión
Secretario de la SAE
INGENIEROOO :)
******

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 642
Agradecimientos dados: 20
Agradecimientos: 114 en 25 posts
Registro en: Feb 2010
Mensaje: #7
RE: [CONSULTA] Final Sistemas Operativos 31/07/2012
Bueno finalmente lo hice, decime si esta bien por favor y gracias por ayudarme hasta aca.

1º dato: Direccion logica 200A h que referencia al primer segmento. De aca deduzco que los primeros 3 bits son para el numero de segmento, y los 13 bits restantes para el offset.
2º dato: Direccion logica 000E h => numero de segmento 0 y direccion 14 en decimal para el offset
Direccion fisica 0FAF h => 4015 en decimal, siendo el limite del segmento 0. Limite - Offset = Base ; 4015 - 14 = 4001
3º dato: Direccion logica 4077 h => numero de segmento 2 y direccion 119 en decimal para el offset.
Direccion fisica FFF7 h => 65527 en decimal, siendo el limite del segmento 2. Limite - offset = Base ; 65527 - 119 = 65408
4º dato: Direccion logica 201E h => numero de segmento 1 y direccion 30 en decimal para el offset
Dirrecion fisica 0FFF h => 4095 en decimal, siendo el limite del segmento 1. Limite - offset = Base ; 4095 - 30 = 4065
5º dato: La direccion logica 201F h produciria un segmentatation fauly. En decimal me da 31. Significa que estara entre el segmento 0 y 1 y no hay ningun segmento por eso da un fallo. Provocando fragmentacion externa, lo cual me sirve en el punto C.
6º dato: Una escritura sobre la direccion logica 200C h produciria una interrupcion por modo de acceso invalido.
Esta direccion hace referencia al segmento 1, entonces de aca deduzco el punto b que dice cual sea posiblemente el segmento de codigo, y yo responderia el 1, porque es donde esta el codigo, el cual no puedo acceder para escribirlo.

Resumiendo el punto A:
Segmento - Base - Limite
0 - 4001 - 4015
1 - 4065 - 4095
2 - 65408 - 65527

Corregime Adro, ruego a Dios que este bien sino me la corto XD jaja
17-07-2013 19:09
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
Agro Sin conexión
Presidente del CEIT
Su marca puede estar aquí
**********

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 6.760
Agradecimientos dados: 252
Agradecimientos: 888 en 293 posts
Registro en: Jul 2008
Facebook Twitter
Mensaje: #8
RE: [CONSULTA] Final Sistemas Operativos 31/07/2012
No se cuando da en decimal, tengo los resultados en hexa en la cabeza. Pero si el 0 y el 1 son contiguos, alguna cuenta te dio mal

Igual la idea era esa

[Imagen: digitalizartransparent.png]
(Este mensaje fue modificado por última vez en: 18-07-2013 01:06 por Agro.)
18-07-2013 01:06
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
AGUSTIN27 Sin conexión
Secretario de la SAE
INGENIEROOO :)
******

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 642
Agradecimientos dados: 20
Agradecimientos: 114 en 25 posts
Registro en: Feb 2010
Mensaje: #9
RE: [CONSULTA] Final Sistemas Operativos 31/07/2012
Adro, el enunciado dice "Los segmentos 0 y 1 están cargados en forma adyacente en la memoria". Eso que significa ? Adyacente es lo mismo que contiguo ? Yo lo que entendi por adyacente es que esta uno seguido del otro pero en el medio hay fragmentacion externa. Por eso el limite del segmento 0 es 4015 y la base del segmento 1 es 4065, y entre 4015 y 4065 hay fragmentacion externa.
Si los segmentos estarian contiguos, si el 0 termina en la posicion 4015 en decimal, el 1 no empezaria en la 4016 ?
18-07-2013 16:12
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
Buscar en el tema
Enviar respuesta 




Usuario(s) navegando en este tema: 1 invitado(s)