miércoles, 15 de mayo de 2013

HILO2


UNIVERSIDAD AUTONOMA DEL ESTADO DE MEXICO
CENTRO UNIVERSITARIO ATLACOMULCO
  

INGENIERIA EN COMPUTACION


TIPOS DE SISTEMAS OPERATIVOS

USO DE HILOS

2do PARCIAL


LIC.ELIZABETH EVANGELISTA
YABIN GONZAGA LOPEZ



8° SEMESTRE
ICO – 14


ATLACOMULCO MEXICO, MAYO 2013.
Elabora 1 programa utilizando 4 hebras, dónde utilices números aleatorios entre 1-10000, la primera hebra hará la suma de x+y; la hebra 2 x-y; la hebra 3 x (*) y; la 4 hebra x/y.


Como se observa, en la imagen las operaciones se realizan con números aleatorios.

lunes, 13 de mayo de 2013

Hilo 1



UNIVERSIDAD AUTONOMA DEL ESTADO DE MEXICO
CENTRO UNIVERSITARIO ATLACOMULCO



INGENIERIA EN COMPUTACION


TIPOS DE SISTEMAS OPERATIVOS

USO DE HILOS

2do PARCIAL


LIC.ELIZABETH EVANGELISTA
YABIN GONZAGA LOPEZ



8° SEMESTRE
ICO – 14


ATLACOMULCO MÉXICO, MAYO 2013.
EJERCICIO #1
Elaborar un programa utilizando 2 hilos, dónde la hebra 1 haga la suma de los números del 1-25000; la segunda hebra hará la suma de 25001-50000; presentar los resultados en pantalla.
RESULTADO:



Como se puede observar en la imagen de arriba, primero se ejecuta un hilo y después el otro, así se realiza el proceso de manera mas fácil; el resultado se realizo con otro rango de números diferentes a los establecidos en el programa, esto con la finalidad de comprobar que realmente funcionan los hilos.

miércoles, 8 de mayo de 2013

PRIORIDAD Y SECCION CRITICA


UNIVERSIDAD AUTONOMA DEL ESTADO DE MEXICO
CENTRO UNIVERSITARIO ATLACOMULCO



INGENIERIA EN COMPUTACION


TIPOS DE SISTEMAS OPERATIVOS

SECCION CRITICA Y PRIORIDAD
2do PARCIAL


LIC.ELIZABETH EVANGELISTA
YABIN GONZAGA LOPEZ



8° SEMESTRE
ICO – 14


ATLACOMULCO MEXICO, MAYO 2013.




PROPÓSITO :
El docente determinara mediante la ejecución de un caso práctico en java de las principales  diferencias entre los conceptos de prioridad y sección critica aplicables a los sistemas operativos.
Procedimiento
Ejecutará los programas y elabora un cuadro comparativo de las principales diferencias que identifiques durante y después de la ejecución del código fuente y define con tus propias palabras los conceptos de sección crítica y prioridad.
Diferencia entre sección crítica y prioridad

Seccion critica
prioridad
Se llama sección crítica
a los segmentos de código dentro de un programa que acceden a zonas de memoria comunes desde distintos threads que se ejecutan  concurrentemente

El acceso concurrente se controla teniendo cuidado de las variables que se modifican dentro y fuera de la sección crítica. La sección crítica se utiliza por lo general cuando un programa multihilo actualiza múltiples variables sin un hilo de ejecución separado que lleve los cambios conflictivos a esos datos.
El scheduler determina el thread que debe ejecutarse en función de la prioridad asignada a cada uno de ellos. El rango de prioridades oscila entre 1 y 10. La prioridad por defecto de un thread es Thread.NORM_PRIORITY, que tiene asignado un valor de 5. Hay otras dos variables estáticas disponibles, que son Thread.MIN_PRORITY, fijada a 1, y Thread.MAX_PRIORITY, aque tiene un valor de 10.
El método getPriority() puede utilizarse para conocer el valor actual de la prioridad de un thread.
Java tiene un Planificador (Scheduler), una lista de procesos, que muestra por pantalla todos los hilos que se están ejecutando en todos los programas y decide cuáles deben ejecutarse y cuáles deben encontrarse preparados para su ejecución. Hay dos características de los hilos que el planificador tiene en cuenta en este proceso de decisión.
·         La prioridad del hilo (la más importante).
·         El indicador de demonio (que pasaremos a explicar en los siguientes apartados).
MAX_PRIORITY (= 10): es el valor que simboliza la máxima prioridad.
MIN_PRIORITY (= 1): es el valor que simboliza la mínima prioridad.
NORM_PRIORITY (= 5): es el valor que simboliza la prioridad normal, la que tiene la hebra creada durante el arranque de la máquina virtual y que se encarga de ejecutar la función main().


RESULTADO DE LA EJECUCION DEL PROGRAMA DE PRIORIDAD
RESULTADO DE LA EJECUCION DEL PROGRAMA DE SECCION CRITICA



FIBONACCI


UNIVERSIDAD AUTONOMA DEL ESTADO DE MEXICO
CENTRO UNIVERSITARIO ATLACOMULCO



INGENIERIA EN COMPUTACION


TIPOS DE SISTEMAS OPERATIVOS

SERIE DE FIBONACCI
2do PARCIAL


LIC.ELIZABETH EVANGELISTA
YABIN GONZAGA LOPEZ



8° SEMESTRE
ICO – 14


ATLACOMULCO MEXICO, MAYO 2013.

SE EJECUTA EL PROGRAMA DE FIBONACCI CON UNA SERIE DEL 1-100.
LO QUE HACE LE FIBONACCI ES SUMAR EL NUMERO ANTERIOR AL  ACTUAL  Y ASI SUCESIVAMENTE (1+1=2+1=3+2…)
A CONTINUACION, SE MUESTRA EL CODIGO UTILIZADO
package seriefibunacci;
public class Seriefibunacci {
    public static long fib(int n) {
if (n <= 1) return n;
else return fib(n-1) + fib(n-2);
}
    public static void main(String[] args) {
        int N = 100;
for (int i = 1; i <= N; i++)
System.out.println(i + ": " + fib(i));         // TODO code application logic here
    }
}
Y AQUÍ SE MUESTRA SU EJECUCION:

COMO SE PUEDE OBSERVAR, LA EJECUCIÓN AUN NO TERMINA PORQUE EL PROGRAMA ESTA PREDETERMINADO A 100 VECES, LO QUE SIGNIFICA QUE SE SUMARA 100 VECES Y APENAS VA EN LA EJECUCIÓN NUMERO 48, DESPUÉS DE ESTE NUMERO DE EJECUCIONES, LA FORMA DE PROCESAR ESTE CÓDIGO, LA MAQUINA TARDA CADA VEZ MAS EN CADA EJECUCIÓN PARA DETERMINAR EL SIGUIENTE RESULTADO, SI LO HARÍA, PERO EL TIEMPO DE EJECUCIÓN SERIA MUCHO; PARA ESTO SE UTILIZAN LOS HILOS LOS CUALES SON PROCESOS DE PROCESOS, ES DECIR, SON SUBPROCESOS.



CUESTIONARIO


UNIVERSIDAD AUTONOMA DEL ESTADO DE MEXICO
CENTRO UNIVERSITARIO ATLACOMULCO



INGENIERIA EN COMPUTACION


TIPOS DE SISTEMAS OPERATIVOS

CUESTIONARIO
2do PARCIAL


LIC.ELIZABETH EVANGELISTA
YABIN GONZAGA LOPEZ



8° SEMESTRE
ICO – 14


ATLACOMULCO MEXICO, MAYO 2013.

                1.- DIFERENCIA ENTRE PROGRAMACION SECUENCIAL Y PROGRAMACION CONCURRENTE
PROGRAMACION SECUENCIAL
PROGRAMACION CONCURRENTE
Hasta ahora se ha trabajado con programas secuenciales
–Se ejecuta paso a paso
Son deterministas: si se ejecutan varias veces en las mismas condiciones, en diferentes equipos, da los mismos resultados

En lo que sigue se trata de programación concurrente
En cada momento puede haber varios fragmentos en ejecución más o menos simultánea
Dos ejecuciones, en las mismas circunstancias, pueden producir resultados diferentes

2.- ESTE TERMINO ES UTLIZAIDO EN LA PROGRAMACION CONCURRENTE PARA INDICAR UN PROGRAMA UNICO EN EL QUE PUEDE HABER MAS DE UN CONTEXTO DE EJECUCIÓN ACTIVOS SIMULTANEAMENTE?
àCONCURRENCIA: SIMULTANEIDAD DE 2 SUCESOS
GALACISMO POR COMPETENCIA, RIVALIDAD
3.- MENCIONA LOS 5 ESTADOS DE UNA HEBRA
àCREACION,BLOQUEO,DESBLOQUEO Y TERMINACION.
4.-EXPLICA COMO FUNCIONARIA EL TERMINO DE EXCLUSION MUTUA PARA UN HILO?
àPARA QUE LAS HEBRAS ACCEDAN A LOS RECURSOS DE FORMA CONTROLADA DE MODO QUE UNA HEBRA SEA DUEÑA DE UN RECURSO EN UN DETERMINADO MOMENTO.EL LENGUAJE JAVA INDICA LA EJECUCION EN EXCLUSION MUTUA. PARA ESO, TANTO EL COMPILADOR COMO LA MAQUINA VIRTUAL TRABAJAN DE MANERA CONJUNTA, PARA QUE LA EXCLUSION SE LLEVE A CABO.
JAVA PERMITE 2 MODOS DE SINCRONIZACIÓN
1.- METODOS SINCRONIZADOS
2.- METODOS DE CLASE (STATIC)
5.-CARACTERISTICAS DE LOS PROCESOS CONCURRENTES?
àVARIOS FRAGMENTOS EN EJECUCION
à2 EJECUCIONES CASI IGUALES GENERAN DISTINTOS RESULTADOS
6.-METODOS QUE UTILIZA JAVA PARA CONTROLAR LOS ESTADOS DE UNA HEBRA
START, SLEEP, JOIN,YIELD
7.-CONCEPTOS
THREAD:
àUNICO FLUJO DE CONTROL DENTRO DE UN PROGRAMA LLAMADO CONTEXTO DE EJECUCION, POR QUE CADA THREAD TIENE RECURSOS PROPIOS.
YIELD:
àMUEVE AL THREAD DESDE EL ESTADO DE CORRIENTE AL FINAL DE LA COLA DE PROCESOS EN ESPERA POR LA CPU
SLEEP:
àPONE A DORMIR UN THREAD POR UN TIEMPO MINIMO ESPECIFICADO
START:
àUSADO PARA INICIAR EL CUERPO DE LA THREAD DEFINIDO POR EL METODO RUN
RUN:
àINDICA TODO LO QUE EL HILO EN SU VIDA: SECUENCIA DE ACCIONES CICLO DENTRO DE UN FOR
STOP:
àDETIENE LA EJECUCION D E LA THREAD NO IMPORTANDO CONSIDERACION ALGUNA
SUSPEND:
àPARA TEMPORALMENTE LA EJECUCION DE UN THREAD
RESUME:
àREACTIVA UN THREAD SUSPENDIDA
RUNABLE:
àPROPORCIONA LA CAPACIDAD DE AÑADIR LA FUNCIONALIDAD DE UN HILO O UNA CLASE, SIMPLEMENTE IMPLEMENTADO LA INTERFAZ

lunes, 29 de abril de 2013

ARREGLO DE DISCOS T#4


UNIVERSIDAD AUTONOMA DEL ESTADO DE MEXICO
CENTRO UNIVERSITARIO ATLACOMULCO

INGENIERIA EN COMPUTACION


TIPOS DE SISTEMAS OPERATIVOS

TAREA #4

ARREGLO DE DISCOS



 2do PARCIAL
                                                                      





LIC.ELIZABETH EVANGELISTA


YABIN GONZAGA LOPEZ

8° SEMESTRE
ICO – 14



ARREGLO DE DISCOS:
Un conjunto de discos es un almacenamiento en disco del sistema que contiene varias unidades de disco. Se diferencia de una caja de disco , en el que una matriz tiene caché de memoria y funcionalidad avanzada, como RAID y virtualización .
RAID se basa en la combinación de múltiples unidades de disco pequeñas y baratas que se agrupan en un conjunto de discos para llevar a cabo acciones que no se pueden realizar con unidades grandes y costosas.

REQUERIMIENTOS FISICOS PARA LA INSTALACION DE ARREGLO DE DISCOS PARA ESXi 5.0
ESXi 5.0
Procesador de 64 bits
  • ESXi 5.0 SE Instala y ejecuta SÓLO SE en Servidores con Procesadores x86-64.
  • ESXi 5.0 Requiere ONU Equipo anfitrión con al Menos dos núcleos.
  • ESXi 5.0 solo admite instructions de CPU pisos LAHF y SAHF.
  • Procesadores de 64 bits de Conocidos:
    • Todos los Procesadores AMD Opteron
    • Todos los Procesadores Intel Xeon 3000/3200, 3100/3300, 5100/5300, 5200/5400, 5500/5600, 7100/7300, 7200/7400 y 7500
RAM
  • Mínimo 2 GB de RAM.
Adaptadores de red
Uno o Más CONTROLADORES Ethernet Gigabit o de 10Gb. Para Obtener Una Lista de los Modelos de adaptadores de red compatibles, Consulte la Guía de compatibilidad de VMware .
Adaptador de SCSI, Adaptador párrafo canal de fibra o Controlador RAID interno
Cualquier Combinación de uno o Más de los CONTROLADORES Que se mencionan a continuacion:
  • CONTROLADORES Básicos SCSI. Adaptec Ultra 160 o Ultra-320, LSI Logic Fusión-MPT, o la Mayoría de SCSI NCR / Symbios.
  • CONTROLADORES RAID. CONTROLADORES Dell PERC (RAID de Adaptec o LSI MegaRAID), HP Smart Array RAID o IBM (Adaptec) ServeRAID.
Instalación y Almacenamiento
  • Disco SCSI o RAID LUN locales sin pecado rojo con Espacio no particionado párr las Máquinas virtuales.
  • Para Serial ATA (SATA), sí Conecta sin discoteca a Traves De Los CONTROLADORES SAS o los compatibles de los CONTROLADORES SATA Incorporados compatibles. Los discos SATA sí consideran Remotos, no locales. Dichos Discotecas No Se utilizarán Como. partición from Cero Defecto porciones de dado Que se consideran Remotos.
ESXi 5.0 admite la Instalación y El Arranque from the following Sistemas de Almacenamiento:
  • Unidades de disco SATA. Unidades de disco de SATA Conectadas En La instancia de parte posterior de los CONTROLADORES SAS o los compatibles de los CONTROLADORES compatibles Incorporados.
  • CONTROLADORES SATA. Entre los CONTROLADORES SAS compatibles SE INCLUYEN:
    • LSI1068E (LSISAS3442E)
    • LSI1068 (SAS 5)
    • Controlador IBM ServeRAID 8k SAS
    • Controlador Smart Array P400/256
    • Controlador Dell PERC 5.0.1
  • Entre los SATA Incorporados compatibles SE INCLUYEN:
    • Intel ICH9
    • NVIDIA MCP55
    • ServerWorks HT1000
  • Unidades de disco Serial Attached SCSI (SAS). Se admite Para La Instalación De ESXi 5.0 y el párrafo Almacenamiento de las Máquinas virtuales en las Particiones VMFS.
  • Disco Dedicado SAN Sobre Canal de Fibra o iSCSI
  • Dispositivos USB. Se admite Para La Instalación De ESXi 5.0. Para Obtener Una Lista de Dispositivos USB compatibles, consulte El la Guía de compatibilidad de VMware.
 PRINCIPALES CARACTERISTICAS DE UN DISK ARRAY
·         RAID está basado en el concepto de que los datos tienen que distribuirse en cada conjunto de discos de manera consistente.
·       Para ello, los datos se rompen en pedazos o grupos de datos con un tamaño que varía normalmente entre 32K y 64K aunque se pueden usar otros tamaños.
·         Cada grupo de datos se escribe en el disco duro según el nivel de RAID. Cuando se leen los datos, se invierte el proceso de maneraque parece que existan muchas unidades de disco en una sola.



VENTAJAS DE UN ARREGLO DE DISCOS
·         El rendimiento general del sistema aumenta.
·         Ofrece mas fiabilidad de almacenamiento de datos.
·         Si uno de los discos del conjunto falla, la unidad continúa funcionando, a sin pérdida de tiempo ni de datos.
·         La reconstrucción de los datos del disco que ha fallado se hace de forma automática sin Ia intervención humana.
·          Mayor rendimiento y tasa de transferencia de datos que los discos individuales como resultado de las operaciones de lecturas/escritura simultáneas realizada sobre múltiples disco en paralelo
·         Mayor capacidad de almacenamiento que los discos individuales. Un “array” de disco RAID puede verse como un disco lógico formado por la suma de los discos individuales que lo conforman, por lo que en la mayoría de las configuraciones, la capacidad total será superior
DESVENTAJAS:
·         Si dos discos fallan de manera simultánea hay una pérdida total de la información.
·         Un RAID 0 no tiene mecanismos de redundancia


RAIDS
VENTAJAS
DESVENTAJAS
RAID 0
Mejora el rendimiento
No tiene mecanismos de redundancia.
RAID 1
Se protege la info, evita perdida de info y las interrupciones del sistema debido a fallas de discos
Gran consumo de Hw
Costo alto $
RAID 3-4
Proporciona una alta disponibilidad del arreglo asi como una tasa elevada de transferencia
Si 2 discos fallan de manera simultanea hay perdida total de la info.
RAID 5
Es el esquema de protección de info mas usado comúnmente.
Tiene suficiente redundancia
Si 2 discos fallan de manera simultanea hay perdida total de la info.
EJEMPLOS DE DISK ARRAYS
EMC Symmetrix DMX1000.En la parte superior se encuentran los discos duros en los controladores de menores, fuentes de alimentación y UPS .Derecho de laptop control.
Hewlett-Packard Disk-Arrays: HASS (oben) und NIKE
EMC CLARiiON CX500 mit abgenommener Abdeckung an einem Platten-Shelf

martes, 2 de abril de 2013

INSTALACION DE ORACLE P1

1.-inica el S.O



2.- Abrir los puertos ir a una terminal como lo muestra la siguiente figura

3.- Dirígete al sistema de archivos donde esta bin, etc, usr, lost+found, etc. Y busca dentro de etc, ahí encontraras el directorio  sysconfig, dentro de este directorio encuentras  un archivo donde configuras los puertos llamado iptables, edítalo y agregale  el puerto 1521 puerto de escucha de oracle, y el 1158, 3938, 5500

Para restablecer los cambios en la terminal  escriba service iptables restart
 

CONFIGURAR EL HOST DE RED
Inicialmente das un ifconfig en terminal de Linux para saber cuál es la ip que te esta asignada a la maquina en este caso es 192.168.56.101 . 

y en Windows es ipconfig

2.1 ponerle nombre al host  para que en lugar de manejar una ip le pongamos un nombre Archivo /etc/hosts (Asigna los nombres de sitemas o alias a direciones IP)
Editarlo agregando la ip y un nombre se llamara miservidor

REQUISITOS PREVIOS A LA INSTALACION DEL RDBMS
1.       LOS SIGUIENTES GRUPOS SON LOS QUE COMUNMENTE SE REQUIEREN PARA INSTLAR LOS PRODUCTOS DE ORACLE
2.       LOS NUMEROS DE LOS GRUPOS Y USUARIO ORACLE PUEDEN SER OTROS SOLO QUE EL NUMERO NO DEBERA ESTAR OCUPADO
3.       Y QUE NO VALLA EN CONTRA DE LAS POLITICAS DE ADMINITRACION DE LA EMPRESA SI ES QUE LA EMPRESA LLEVA ALGUN CONTROL SOBRE CREACION DE GRUPOS O USUARIOS.
Ø  groupadd -g 521 oinstall
Ø  groupadd -g 522 dba
Ø  groupadd -g 523 oper

Una vez agregados los grupos los puedes  visualizar de modo grafico en sistema, administración y usuarios y grupos.


O en la terminal en etc, escribe cat passwd(visualiza usuarios), para ver grupos cat passwd groupadd
(ver grupos)

CREACION DEL USUARIO ORACLE Y CAMBIO DE CLAVE, TENER CUIDADO AL CAMBIAR LA CLAVE DEL USUARIO ORACLE SI SE HACE CON EL USUARIO ROOT, EL COMANO DEBE SER "passwd oracle", YA QUE SI SE TECLEA SOLAMENTE "passwd" LA CLAVE QUE SE ESTARA CAMBIANDO SERA LA DEL USARIO "root" Y NO LA DEL USUARIO "oracle"
useradd -u 521 -g oinstall -G dba,oper oracle -p oracle
passwd oracle

Vista en modo grafico


Después de crear el usuario oracle se recomienda crear un archivo o directorio de prueba para probar que el usuario pueda escribir en su home directory y que tenga como grupo principal oinstall.

DESPUES DE CREAR EL USUARIO ORACLE MODIFICAR EL PUNTO PROFILE ( .profile ) en UNIX o ( .bash_profile ) en LINUX
LOS CAMBIOS SE PUEDEN HACER USANDO EL USUARIO oracle
su oracle
vi /home/oracle/.bash_profile

Add the following (use hostname from the command line to get your hostname and use the correct paths for your install):

export TMP=/tmp
export TMPDIR=$TMP
export ORACLE_HOSTNAME=laboratorio
export ORACLE_UNQNAME=milab01
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0.1.0/db_1
export ORACLE_SID=milab01
export PATH=/usr/sbin:$ORACLE_HOME/bin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib:/usr/lib64
export CLASSPATH=$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib


# LIMITES DEL USUARIO ORACLE

if [ $USER = "oracle" ]; then
        if [ $SHELL = "/bin/ksh" ]; then
              ulimit -p 16384
              ulimit -n 63536
        else
              ulimit -u 16384 -n 63536
        fi
fi

Nota:
Checar los comandos para ver las valiables de entorno o envCREAR LOS DIRECTORIOS PARA LA INSTALACION DE ORACLE
En este momento debes de estar como root (su root, contraseña)
 EL SOFTWARE DE INSTALACION (ORACLE_BASE)(/u01/app/oracle)
 EL MOTOR DE ORACLE (ORACLE_HOME)(/u01/app/oracle/product/11.2.0.1.0/db_1) 

"Nota"
De aqui se tiene que ORACLE_BASE=/u01/app/oracle  y  ORACLE_BASE=/u01/app/oracle/product/11.2.0.1.0/db_1
Pero si no hay espacio en /u01/u01/app/oracle para el software de instalacion descompactado, poner el
ORACLE_BASE en otro lugar, por ejemplo: en /opt/oracle, por lo que quearia ORACLE_BASE=/opt/oracle
o en oto lugar con sufiente espacio.
En este caso en ORACLE_BASE se coloco el software requerido para la instalacion y decompactarlo
pero el software de oracle se puede colocar en cualquier otro diractorio que tenga espacio, solamente
se debera verificar que el usuario oracle pueda escribir en este directorio para realizar la instalacion
y despues de terminada la instalacion se puede borrar este software, para liverar el espacio.
Copias los archivos de instalación a la ruta


COPIA LOS ARCHIVOS
(Se hace como root porque no se asignan aun los permisos)
PARA ESTE CASO: los archivos se encuentran en usb y la información se visualiza en el directorio media, luego se utilizo el comando cp para copiar
Cp nombre del archivo y la ruta a donde se pondrá la información
Este modo es desde la consola
cp Linux_11gR2_database_1of2.zip /u01/app/product/oracle/oracle_sw