miércoles, 2 de diciembre de 2015

¡¡Impedid el Windowscalypse!!

Saludos compañeros.

Muchos habéis sido testigos de mi congoja esta mañana, cuando, sin previo aviso y rozando la tragedia, Windows 10 ha intentado colarse con triquiñuelas y subterfugios en mi ordenador para derrocar a mi prácticamente inútil pero inocente Windows 8.1 (el tuerto del país de los ciegos).

Pues buscando por internet, me he encontrado esta página con remedios efectivos para combatir virus invasivos como el que casi me asalta hoy.

Os la comparto en una muestra de mi inabarcable generosidad.

Bloquear Windows 10

viernes, 13 de noviembre de 2015

Consejo Rápido: Comandos Windows (mkdir, tree, cd..)

 Con este articulo quería mostraros que la línea de comandos no es aquello que los informáticos usamos por postureo si no una forma muy sencilla y cómoda de ahorrarnos trabajo y sobretodo, tiempo.

Y como la experiencia es la mejor profesora... os dejo con un enlace al articulo preparado en mi blog ·profesional· donde, a través de una práctica para el módulo que da nombre a este blog decidí lanzarme a hablar de estos temas que en las películas quedan muy bien, pero que en realidad hasta un niño de seis años puede hacer.
 
Enlace al articulo (web externa)
Enlace al articulo 2 (Web Externa)

lunes, 9 de noviembre de 2015

Blog sobre Desarrollo

Quería compartir con todos este blog, es de un desarrollador que cuelga contenidos de todo tipo relacionados con su profesión y el día a día de esta.

He estado leyéndolo un poco por encima y creo que tiene cosas que nos pueden ser muy útiles.

https://sobredesarrollo.wordpress.com/

jueves, 5 de noviembre de 2015

Detección y corrección de errores (bits)

Detección y corrección de errores
6. Detección y corrección de errores
• No podemos evitar que haya errores, pero si los hay debemos
detectarlos.
• Otro asunto distinto es que una vez detectado el error, se sepa
corregirlo mediante técnicas sofisticadas de cálculo o
retransmisión de la información.
• Perder información
▫ no significa que la información que envía el emisor no llegue al
receptor.
▫ Significa que hay cambios no deseados o imprevistos en la
información
Un bit que sea 0 se convierte en 1 y viceversa
Ejemplo: sistema de comunicaciones de un cajero automático3
6. 1. La detección del error
La paridad simple/lineal
• Se basa en que junto con la información del usuario se envían
una serie de bits que indican cualidades de estos datos.
• Una alteración en la información se detecta por comparación
con esos bits especiales de paridad (que hace que no se
correspondan con los valores previstos en el momento de la
emisión).
• Este sistema sólo es capaz de detectar errores producidos en un
número impar de bits de la cadena transmitida.
• Se utiliza sobre todo en transmisiones asíncronas donde se
manda un bit de paridad por carácter o dato.4
6. 1. La detección del error (cont.)
Paridad Par: el bit de paridad se calcula contando el número de unos: si
es un número par el bit vale 0, si es impar vale 1
Paridad impar:el bit de paridad se calcula contando el número de unos:
si es un número par el bit vale 1, si es impar vale 0
Ej. Si queremos enviar la cadena 0011011
Paridad par:
0011011(0)
Si se altera el segundo 0 de la cadena de bit y recibimos 0111011(0)
el receptor descubre el error porque en número de unos es 5 (impar y debería ser
un número par).
Ej. Si queremos enviar la cadena 0011011
Paridad impar:
0011011(1)
Si se altera el segundo 0 de la cadena de bit y recibimos 0111011(1)
el receptor descubre el error porque en número de unos es 6 (par y debería ser un
número impar).5
6. 1. La detección del error (cont.)
La paridad de bloque
La paridad de bloque es un caso especial de la paridad simple.
También puede ser par o impar.
Se trata de organizar la información por bloques, componiendo
una tabla de n x m bits.
Seguidamente se sacan los bits de paridad por filas y por
columnas.
Por último, se envían por la línea de transmisión junto con los bits
constitutivos del mensaje los bits de paridad calculados. Estos bits
calculados constituyen la paridad de bloque o checksum .6
6. 1. La detección del error (cont.)
La paridad de bloque (II)
El receptor reconstituye la tabla y comprueba que los códigos de
paridad sean correctos.
Si se ha alterado el valor de algún bit del mensaje no solo se
puede detectar que se ha producido un error, sino que también se
puede saber dónde se ha producido.
Este método no solo es capaz de detectar el error sino también
de corregirlo, en algunos casos.
En caso de que se pierdan varios bits en la secuencia, este método
es capaz de detectarlo aunque no de corregirlos; por tanto, es más
sensible que el método de paridad simple.7
6. 1. La detección del error (cont.)
Ej. Supongamos que queremos transmitir la siguiente información
00110, 01010, 11001, 11111 la expresamos así en una tabla y
calculamos los bits de paridad por filas y por columnas:
Envía
Llega
0 0 1 1 0 0 0 0 1 1 0 0
0 1 0 1 0 0 0 1 1 1 0 0
1 1 0 0 1 1 1 1 0 0 1 1
1 1 1 1 1 1 1 1 1 1 1 1
0 1 0 1 0 0 1 0 1 0
Al recalcular el receptor los códigos de paridad detecta que no
coinciden los códigos de la 2a fila y 3a columna que deberían ser 1’s.
Se ha detectado pero además se sabe dónde se ha producido.8
6. 1. La detección del error (cont.)
Redundancia cíclica (CRC)
Dado un bloque de mensaje de k-bit, el transmisor genera una
secuencia de n-bits, denominada secuencia de comprobación de
la trama (FCS)
De tal manera que la trama resultante, con n+k bits , sea divisible por
algún número previamente acordado entre emisor y receptor,
denominado polinomio patrón, P.
El receptor entonces dividirá la trama recibida por ese patrón y si no
hay resto en la división se supone que no ha habido errores.9
6. 1. La detección del error (cont.)
Ejemplo:
G(x)= X 5 +x 4 +x 2 +1
Dado el mensaje M = 1010001101 (10 bits) El patrón P = 110101 (6 bits)
Por tanto la FCS será de 5 bits (grado del polinomio de P)
El mensaje se multiplica por 2 5 (desplazar hacia la izquierda 5 bits)
El resultado se divide por P
1010001101 00000 |110101
110101 (patrón)
1101010110
111011
110101
111010
110101
111110
110101
101100
110101
110010
110101
01110 (Resto)
El resto se suma la mensaje a transmitir T= 10100011010111010
6. 1. La detección del error (cont.)
Si no hay error el receptor recibe T intacto.
La trama recibida se divide por P:
101000110101110 |110101
110101
1101010110
111011
110101
111010
110101
111110
110101
101111
110101
110101
110101
0000000 como no hay resto no ha habido errores.11
6. 1. La detección del error (cont.)
PROCEDIMIENTO DE APLICACIÓN DEL MÉTODO DE REDUNDANCIA
CÍCLICA
1) MENSAJE A TRANSMITIR
-
Añadir n (grado del polinomio patron) ceros al mensaje M para obtener M0
-
Dividir M0 entre el patron
-
Sumar el resto obtenido a M0
2) COMPROBACION DEL MENSAJE RECIBIDO
2.1. - Dividir el mensaje recibido entre el patrón
- Comprobar que el resto es cero
- Obtener el mensaje quitando los n últimos bits
2.2.
- Restar los n últimos bits (sustituir por 0)
- Dividir entre el patrón
- Comprobar que el resto coincide con los n últimos bits quitados12
6. 1. La detección del error (cont.)
Con este método se podrán detectar:
Todos los errores de un único bit.
Todos los errores dobles, siempre que el patrón tenga al menos 3
unos.
Cualquier número impar de errores siempre que el patrón contenga el
factor x +1 ( es decir acabe en 11)
Cualquier ráfaga de errores en la que la longitud de la ráfaga sea
menor que la longitud del polinomio divisor.
La mayoría de las ráfagas de mayor longitud.
Los patrones más frecuentes son:
CRC-12 = X 12 +X 11 +X 3 +X 2 +X+1.
Se utiliza para la transmisión de secuencias de
caracteres de 6 bits y genera un FCS de 12 bits .
CRC-16 = X 16 +X 15 +X 2 +1.
Se utiliza en los Estados Unidos.
CRC-CCITT = X 16 +X 12 +X 5 +1.
Se utiliza en Europa .13
6.2. La corrección del error
• La estrategia de corrección de errores se dividen en dos grandes
grupos:
▫ Sistemas de corrección hacia delante
Consiste en reconstruir la información perdida a partir de los
datos erróneos recibidos.
▫ Sistemas de corrección hacia atrás
Se basan en que cuando el receptor detecta que ha recibido un
código erróneo le dice al emisor que vuelva a repetir el mensaje14
6.2. La corrección del error (cont.)
Sistemas de corrección hacia delante
Código Hamming
• El primer modo de corrección de errores consiste en dejar que el
destinatario determine, a partir de la información redundante que ha
recibido del emisor y del propio mensaje, los bits erróneos.
• Se basan en añadir un conjunto de bits de comprobación a los bits de
información que se pretenden transmitir.
• Cuando se produce un error los bits de comprobación informan de cual
es el bit o conjunto de bits erróneos.
• El conjunto de bits de información (d) y bits de comprobación (B)
constituyen una palabra de código Hamming (b).
• Estudiaremos el funcionamiento de los códigos Hamming para el caso
de la detección y corrección de un único bit erróneo.15
6.2. La corrección del error (cont.)
• Código Hamming para el caso de la detección y corrección de un único bit
erróneo.
▫ Ecuaciones de paridad
a: b1+b3+b5+b7+b9+b11+b13+b15
b: b2+b3+b6+b7+b10+b11+b14+b15
c: b4+b5+b6+b7+b12+b13+b14+b15
d: b8+b9+b10+b11+b12+b13+b14+b15
▫ Comprobación de errores.
Si la paridad se cumple el resultado de cada ecuación es 0, si no se cumple
es 1. Con ello obtendremos 4 valores (0 ó 1) para a, b, c y d. Con ellos
compondremos el valor binario “dcba” que traducido al decimal nos dará
la posición del bit erróneo recibido.

Sistemas de cableado estructurado



1. Define un Sistema de Cableado Estructurado (SCE). ¿Por qué es necesario?
Es una infraestructura local de telecomunicaciones diseñada a partir de un conjunto de normas/o estándares que garantizan su calidad, escalabilidad, modularidad, longevidad e independencia, tanto de los servicios que pueda albergar como de los fabricantes de componentes.
Por que de esta manera se siguen unas normas para hacer un tipo de cableado y todos deben seguir las mismas.
2. Explica brevemente las características de un SCE.
Procesos normalizados de creación y administración: la forma en la que se instala, diseña o planifica los SCE se especifica en un conjunto de estándares de referencia.
Modularidad y capacidad de ampliación: facilita la ampliación de SCE si surgen nuevas necesidades, por lo que se evita modificar la instalación.
Diseño consistente y uniforme: todo el sistema está diseñado con la misma metodología.
Posibilidad de integración de una gran variedad de servicios (servicios de voz, datos y de control): SCE puede albergar distintos tipos de servicios.
Independencia de los fabricantes: no importa de que fabricante sean los productos utilizados en los SCE, funcionarán bien sean de la marca que sean.
Flexibilidad y capacidad de adaptación: se diseñan para poder adaptarse a posibles cambios de organización.
Longevidad: la vida útil de SCE es de mínimo 10 años.

3. Ventajas e inconvenientes de utilizar un SCE.
Ventajas
-Garantía de calidad, consistencia, compatibilidad, longevidad,etc.
-Menor tiempo de aprendizaje por tratarse de una red estándar.





4. Describe los espacios de un SCE, según la normativa internacional
Campus(campus): uno o más edificios.
Edificio(building): puede tener una o más plantas.
Planta(floor) se encuentran los siguientes espacios:
Área de trabajo (working area. WA): espacio donde se ubican los equipos terminales de la red.
Sala de telecomunicaciones (telecommunications room): sala donde se encuentran los equipos de telecomunicaciones, terminaciones del cableado y elementos de conexión entre subsistemas.
Sala de equipamientos (equipment room): sala de comunicaciones donde, además de los equipos de telecomunicaciones, otros equipos de red.
Instalación de acceso (building entrance facility): punto de instalación por donde entra alguno de los servicios externos del campus (electricidad, telefonía, Internet, TV por cable...)

5. Explica brevemente los subsistemas de un SCE y los elementos que componen cada uno.
Subsistema de cableado troncal de campus (campus backbone cabling subsystem): interconecta varios edificios.
Subsistemas de cableado troncal de edificio (building backbone cabling subsystem): interconecta varias plantas de un edificio.
Subsistema de cableado horizontal (horizontal cabling subsystem): conecta varios equipos terminales de la red.

6. Comenta los aspectos a tener en cuenta en el diseño de un SCE
Elección del cableado que queramos, requisitos para el cableado horizontal, requisitos para la canalización del cableado, requisitos para las rosetas y las tomas de red, requisitos para los puntos de consolidación, requisitos para cableado troncal, requisitos para los distribuidores, evitar interferencias electromagnéticas, puesta a tierra, diseños de SCE por ordenador e identificación y etiquetado de los elementos.

7. ¿En qué consiste la certificación de una instalación?. ¿Cuáles son sus parámetros principales?. ¿Cómo se realiza?
En hacer pruebas y distintas medidas para garantizar que la instalación cumple con la normativa que se ha utilizado para diseñarla.
Sus parámetros principales son la longitud del cableado, mapeo de los cables, pérdidas de retorno, atenuación, diafonía, impedancia y resistencia, retardo en la propagación y retardo diferencial.
Para el cableado de fibra óptica, solo se utilizan la longitud de cableado, atenuación de la señal y retardo en la propagación.
Se utilizan certificadores de red, que son parecidos a un comprobador de cableado. Consta de dos aparatos, cada uno de los cuales se conecta a un extremo del enlace o del canal mediante un latiguillo que está calibrado para que no afecte a sus medidas. El resultado del certificador es “apto” o “no apto” para la clase que se quiere certificar.

Gestión de memoria

GESTIÓN DE MEMORIA
Gestor o administrador de memoria: Parte del sistema operativo que lleva registro de la memoria libre y ocupada, asigna la memoria a los procesos cuando la necesitan y la libera cuando han terminado su ejecución. También gestiona el intercambio entre memoria central y disco.
Es un recurso importante y caro hasta hace poco tiempo.

1. Conceptos básicos relacionados con el almacenamiento
1.1. Organización del almacenamiento. Evolución.

El almacenamiento principal se considera un recurso caro y por ello los
diseñadores de sistemas intentan optimizar su uso.
Se entiende por organización del almacenamiento la forma de considerar u
organizar el almacenamiento principal. Se plantean las siguientes preguntas:
• ¿En el almacenamiento principal se debe colocar sólo un usuario o varios al
mismo tiempo?
• Si hay varios programas de usuario al mismo tiempo en memoria principal,
¿se les asigna a cada uno la misma cantidad de espacio o se divide el
almacenamiento en diferentes tamaños?
• ¿Se pueden ejecutar los trabajos en cualquier parte de la memoria o deben
permanecer en unas particiones específicas?Se han construido sistemas que aplican cada uno de estos esquemas; algunos de
los cuales se verán en este tema.
En la siguiente figura podemos apreciar como ha evolucionado la organización
del almacenamiento desde los sistemas de almacenamiento real dedicados a un
solo usuario hasta los sistemas de almacenamiento virtual dedicado a múltiples
usuarios.
Real Real Virtual
Sistemas Almacenamiento real Almacenamiento dedicados de en sistemas de virtual en sistemas de un solo usuario multiprogramación multiprogramación
Multiprogramación con Multiprogramación con Paginación Segmentación Pagin. segm. particiones fijas particiones variables pura Pura combinadas
Absoluto
Reubicable
Evolución de la organización del almacenamiento
Asociado con la organización del almacenamiento se encuentra la asignación del almacenamiento. Esta puede ser contigua y no contigua.
Una asignación de almacenamiento es contigua cuando cada proceso ocupa un
único bloque contiguo de posiciones (localidades) de memoria. Este esquema se
empleaba en los primeros sistemas de computación.
Una asignación de almacenamiento es no contigua cuando un proceso que se
encuentra dividido en varios bloques o segmentos, se coloca en el
almacenamiento principal en fragmentos que no necesitan ser adyacentes. Es
más difícil para un sistema operativo controlar la asignación del  almacenamiento no contiguo, pero la ventaja es que si la memoria principal tiene muchos huecos, es posible en ocasiones poder aprovecharlos para cargar y ejecutar programas que en otro caso tendrían que esperar.1.2. Administración del almacenamiento Sea cual sea el esquema de organización del almacenamiento que se adopte para un sistema específico, es necesario decidir que estrategias se deben utilizar para obtener un rendimiento óptimo. Las estrategias o políticas de administración del almacenamiento determinan el comportamiento de una organización determinada cuando se siguen diferentes políticas. Estas políticas se utilizan para obtener el mejor aprovechamiento posible del almacenamiento principal. Se plantean las siguientes preguntas:

• ¿Cuándo se toma un nuevo programa para colocarlo en memoria?
• En que lugar del almacenamiento principal se coloca el siguiente programa a
ejecutar?
• Si hay que colocar un nuevo programa y ésta está llena, ¿Cuál de los otros
programas se desaloja?
La administración del almacenamiento se divide en las siguientes categorías:
• Políticas de obtención
• Políticas de colocación
• Políticas de reemplazo

Políticas de obtención

Determinan cuándo debe obtenerse la siguiente parte del programa o los datos
que se van a transferir del almacenamiento secundario al principal. Se emplean
básicamente la obtención por demanda y la anticipatoria. 
Políticas de colocación
Tienen que ver con la determinación de la parte del almacenamiento principal
donde se colocará un programa entrante (nuevo o intercambiando). Algunos de
los que se emplean son las denominadas del primer ajuste, mejor ajuste y del
peor ajuste.
Políticas de reemplazo
Están relacionadas con la determinación de qué parte del programa o de los
datos se debe desalojar para dejar espacio a los programas entrantes. Algunos de
los que se emplean son FIFO, LRU, NFU, etc.

2. Gestión de memoria en monoprogramación / multiprogramación
2.1. Gestión de memoria en monoprogramación

• Sólo hay un proceso en memoria
• Cada proceso debe contener los controladores de los dispositivos de entrada /
salida que use.
• Tres formas de organizar la memoria (con un s.o. y un proceso de usuario):
Programa de
usuario Sistema operativo en RAM Sistema operativo en ROM Programa de usuario Manejadores de dispositivos en ROM Programa de usuario Sist. operat. en RAM.
Ejemplos de organización de memoria en monoprogramaciónFuncionamiento:
• El usuario escribe un comando sobre el terminal.
• El sistema operativo carga el programa desde disco a memoria y lo ejecuta.
• Al finalizar dicho programa, el sistema operativo muestra el prompt y espera
a otra demanda.
Inconvenientes de la monoprogramación:
• Mala utilización de la memoria (desperdicio).
• Tiempo de ocio del procesador central en entrada / salida.
• Limitación en el tamaño total del programa.

2.2. Gestión de memoria en multiprogramación
Multiprogramación:
Ejecución entrelazada o concurrente de dos o más procesos. Se opera sobre más
de un proceso a la vez, y los recursos del sistema se distribuyen entre esos
procesos.
Motivaciones que nos inducen a usar la multiprogramación:
• Desdoblamiento de un programa en dos o más procesos. Hace más fácil
programar una aplicación.
• Aprovechamiento de la CPU. A consecuencia de solapar los tiempos de
entrada / salida con los de CPU.

3. Multiprogramación con almacenamiento real
3.1. Multiprogramación con particiones fijas
La memoria principal se divide en “n” particiones fijas. Los procesos entran en
memoria por una cola simple o por colas separadas según tamaño (en la cola de
la partición más pequeña mayor que el tamaño del proceso).
(a) Particiones fijas de memoria con colas de entrada separadas para cada partición.
(b) Particiones fijas de memoria con una sola cola de entrada.
3.2. Multiprogramación con particiones variables
Partición Variable:
Tanto el número como el tamaño de los procesos varían dinámicamente.
Problema à La asignación y liberación de memoria es más complicada que con
las particiones fijas.
Ventaja à Se aprovecha más la memoria ya que a cada proceso se le asigna la
memoria principal que necesita.Evolución de varios procesos en el tiempo en un sistema con particiones variables de
memoria. Las regiones ralladas corresponden a memoria libre (no usada).
Surgen dos problemas:
1. Fragmentación de la memoria. Como consecuencia de la entrada/salida de procesos
en la memoria.
Solución à Compactación de memoria. Se combinan todos los agujeros en uno
más grande. Requiere de mucho tiempo de CPU o de un hardware especial.
2. Crecimiento dinámico de los segmentos de datos. Debido a que no existe un
agujero adyacente el proceso (para asignarle espacio extra), y que no se puede
mover a un agujero más grande.
Solución à Reservar un área de memoria extra
(a) Asignación de espacio para un segmento de datos que crece. (b) Asignación de
espacio para una pila que crece y un segmento de datos que crece también.Representación de una parte de la memoria mediante: Mapa de bits y listas enlazadas.
(a) Representación de una parte de la memoria con cinco procesos y tres huecos.
Las rayitas muestran las unidades de asignación de memoria. Las regiones
sombreadas (0 en el mapa de bits) están libres.
(b) Mapa de bits correspondiente.
(c) La misma información en forma de lista enlazada.

4. Multiprogramación con almacenamiento virtual (memoria virtual)
Cuando los programas son muy grandes para cargarlos en memoria, éstos se
dividen en trozos llamados “overlays” (capas, recubrimientos), que son
intercambiados entre memoria central y disco por el sistema operativo. La
división del programa en “overlays” es misión del programador.
Memoria Virtual:
El tamaño combinado del programa, datos y pila puede exceder la cantidad de
memoria física disponible. El sistema operativo guarda aquellas partes del
programa concurrentemente en uso en memoria central y el resto en disco.
Cuando un programa espera que se le cargue en memoria central de disco otra
parte del mismo, la C.P.U. se puede asignar a otro proceso.Utiliza una asignación no contigua de la memoria.
Direcciones virtuales (no reales) à Las generadas por el programa. El conjunto
de direcciones virtuales forman el espacio de direcciones virtual
Funcionamiento:
• En sistemas sin memoria virtual, la dirección del programa se coloca
directamente sobre el bus.
• Cuando se usa memoria virtual, la dirección virtual se envía a la unidad de
gestión de memoria (MMU, “Memory Managment Unit”). La MMU lo
forma aquella parte del hardware que transforma la dirección virtual en la
dirección de memoria física que se coloca directamente en el bus:
Posición y función de la MMU.

4.1. Paginación
El espacio virtual de direcciones se divide en unidades llamadas páginas, todas
del mismo tamaño. La memoria principal se divide en marcos de páginas o
cuadros de páginas (page frames) del mismo tamaño que las páginas virtuales y
son compartidas por los distintos procesos del sistema (en cada marco de página
se carga una página de un proceso).No todo el espacio virtual de direcciones está cargado en memoria central. Una
copia completa se encuentra en disco y las páginas se traen a memoria central
cuando se necesitan.
Ejemplo:
• Página de 4KB
• Espacio de direcciones virtual de 64KB (direcciones de 16 bits)
• Espacio de direcciones físicas de 32KB
La relación entre direcciones virtuales y direcciones de
la memoria física está dada por la tabla de páginas.
Transformación de direcciones:
Dirección Virtual
Dirección Física
000000000000000 0 Pág. 0, desplaz. 0 8192 Pág. 2, desplaz. 0
010000000000000 8192 Pág. 2, desplaz. 0 24576 Pág. 6, desplaz. 0
101000000010100 20500 Pág. 5, desplaz. 20 12308 Pág. 3, desplaz. 20
110110101100000 28000 Pág. 6 (no cargada)
No tiene dirección física asociadaLa transformación del número de página virtual al número de página física de memoria se realiza mediante la tabla de páginas.
Hay páginas que no tienen correspondencia en memoria central. El hardware
asocia un bit de presencia/ausencia en cada entrada.
Páginas activas: páginas de un proceso residente en memoria central.
Páginas inactivas: páginas de un proceso no residente en memoria principal
(en memoria secundaria).
Si se intenta usar una dirección virtual que no se encuentra en memoria física, la MMU envía una interrupción al sistema operativo (falta de página, page fault).
En ese caso, el sistema operativo saca, si es necesario, una página física de la
memoria central, la copia en el disco (por si ha sufrido alguna modificación) y
carga la página necesaria en memoria central cambiando la tabla de páginas y
restaurando la instrucción interrumpida.
Transformación de la dirección virtual en dirección física:
Los bits de mayor peso de la dirección se interpretan como el número de la
página y los de menor peso como el número de palabra dentro de la página.
Si el tamaño de la página es igual a 2 n , con “n” bits se direcciona cualquier
palabra dentro de una página (el resto se utiliza para direccionar la página).
Ejemplo:
Direcciones virtuales de 20 bits de longitud, tamaño de la página igual a 512 palabras (direcciones, bytes) y direcciones físicas de 14 bits.
• Tamaño de memoria virtual = 2 20 palabras
• Tamaño de la página = 512 palabras = 2 9
Con los 9 bits inferiores se direcciona la palabra, el resto es para el número de la página.
• Número de páginas virtuales : 2 11 páginas.
• Número de páginas físicas: 2 14 -9 = 2 5 = 32 páginasEjemplo:
Transformación interna de una dirección virtual en una dirección física.
• Tamaño de la memoria física = 32K palabras
• Tamaño de la memoria virtual (espacio de direcciones virtuales) = 64K
palabras
• Tamaño de la página = 4K palabras
Número de páginas virtuales = 2 16 - 12 = 2 4 = 16 páginas virtuales
Operación interna de la MMU con 16 páginas de 4K
Dirección virtual = 8196 = 8192 + 4
Dirección física = 24580 = 24576 + 4
Offset (desplazamiento) de 12 bits (4096 direcciones)
Espacio de direcciones unidimensionalOtros esquemas de transformación de direcciones en sistemas paginados.
1. Transformación directa de direcciones:
Se tiene una tabla de páginas para cada proceso en memoria central y
disponemos de un registro hardware que contiene la dirección base de la tabla
de páginas del proceso en ejecución (su valor forma parte del entorno volátil).
Para realizar la transformación directa de direcciones, la tabla de páginas
contiene una entrada para cada página virtual (hay que acceder dos veces a
memoria central)
2. Transformación asociativa de direcciones:
La tabla de páginas físicas (bloques) se guarda en una memoria asociativa
consistente en un conjunto de registros de direcciones de página (PAR, “Page
Address Register”), una por cada página física. Cada página de la dirección
virtual se busca de forma simultánea en todos los PARs (propiedad de los
PAR).
En cada PAR habría que añadir un campo para distinguir páginas de los
distintos procesos.
Inconveniente:
Se necesitan tantos PARs como páginas físicas hay en memoria (si ésta es
grande, el costo aumenta ya que se necesitan muchos PARs).
3. Solución intermedia:
Traducción de direcciones por combinación de los dos casos anteriores. Se
dispone de una pequeña memoria asociativa para referenciar a unas pocas
páginas (las más recientes) asociadas a un proceso. Se tendrá una memoria
asociativa para todos los procesos con lo cual la información que contiene
será parte del entorno volátil. Otra posibilidad sería tener una memoria
asociativa por proceso con lo cual se limitaría el número de procesos. La
búsqueda se solapará entre la memoria asociativa y la tabla de páginas que
hay en memoria para optimizar el tiempo de localización.
El rendimiento de sistemas que usan un mapa parcial puede llegar a ser del
90% (o mayor) del rendimiento correspondiente al mapa asociativo completo
con sólo usar 8 o 16 registros PAR.4.2. Segmentación
• El espacio de direcciones se divide en segmentos, cada uno de los cuales
corresponderá a una rutina (procedimiento, función), un programa o un
conjunto de datos (una entidad lógica). Todo aquello que se corresponda con
sub-espacio de direcciones independientes.
• Cada programa contiene una cierta cantidad de segmentos. Los primeros
segmentos se reservan para procedimientos, datos y pila, pertenecientes al
programa en ejecución. Los segmentos restantes contienen un fichero por
segmento, así que los procesos pueden direccionar todos sus ficheros
directamente sin tener que abrirlos ni usar primitivas especiales de
entrada/salida. Cada fichero puede crecer de forma completamente
independiente de los otros, con cada byte direccionado por un par (segmento,
offset).
• Por otro lado, colocando objetos diferentes en diferentes segmentos, se
facilita la compartición de estos objetos entre procesos múltiples.
Ejemplo:
Se utiliza un esquema segmentado / paginado
Soporte de hardware para una máxima de 16 procesos cada uno con 1024
páginas de 4K (espacio virtual de 4 memorias para cada proceso).
El hardware del MMU contiene una tabla con 16 secciones (una por proceso).
Cada sección tiene 64 descriptores de segmentos (el espacio de direcciones se
descompone en 64 segmentos, cada uno de 16 páginas).Ejemplo:
Un compilador de Pascal podría crear segmentos separados para:
• Variables globales
• Pila de llamadas a procedimientos (para almacenar parámetros y direcciones
de retorno)
• Porción de código de cada procedimiento y función.
• Variables locales de cada procedimiento o función.
• Heap

4.3. Diferencias entre paginación y segmentación
• En paginación, el espacio de direcciones es lineal (unidimensional) y se hace
una división física del mismo. En segmentación, el espacio de direcciones es
bidimensional, se hace una división lógica del mismo (tiene sentido
compartir segmentos).
• Las páginas son de tamaño fijo, determinado por la arquitectura del sistema.
Los segmentos pueden ser de cualquier tamaño.
• La división de las direcciones virtuales en número de página y
desplazamiento es tarea del hardware, mientras que la división en segmento
y desplazamiento es tarea del programador.4.4. Algoritmos de reemplazamiento de página.
Cuando ocurre una falta de página, el sistema operativo elige una página para
sacarla de la memoria y hacer sitio para traer la página necesaria. Si la página
reemplazada ha sido modificada, se debe reescribir en la copia del disco. La
página que se trae a memoria central se sobrescribe sobre la página sacada.
Por tanto, hay que sustituir una página de memoria que no se utilice mucho.
Veamos los algoritmos más interesantes:

4.4.1. Reemplazamiento de la página óptima
Cada página se etiqueta con el número de instrucciones que serán ejecutadas
antes de referenciar esa página. La página a reemplazar será aquella con el valor de la etiqueta más alta.
Es imposible de implementar ya que el sistema operativo no tiene forma de
saber cuando cada página será referenciada próximamente cuando suceda una
interrupción de falta de página.
Lo que se hace es simular el comportamiento de estos algoritmos sobre la
información de referencia recogida en una primera ejecución de los programas
(los resultados sirven de referencia a los demás algoritmos).

4.4.2. Reemplazamiento de la página no usada recientemente (NRU, Not
Recently Used)

A cada página le asociamos 2 bits:
• R: bit de referencia à lo coloca el hardware a 1 en cualquier lectura o
escritura en la página.
• M: bit de modificado à lo coloca el hardware a 1 cuando se escribe en una
página.Cuando un proceso empieza, el sistema operativo coloca a 0 esos 2 bits (para todas las páginas). Periódicamente (cada tick de reloj, que suele producirse a intervalos de 20 ms aproximadamente), el bit R se limpia (se pone a 0) para distinguir páginas no referenciadas de las que si lo han sido.
En una falta de página, el sistema operativo examina los bits R y M de todas las
páginas y saca una página al azar de la clase más baja no vacía:
Clase 0: no referenciada (R=0), no modificada (M=0)
Clase 1: no referenciada (R=0), modificada (M=1)
Clase 2: referenciada (R=1), no modificada (M=0)
Clase 3: referenciada (R=1), modificada (M=1)
El algoritmo tiene un comportamiento adecuado.

4.4.3. Reemplazamiento primera en entrar, primera en salir (FIFO)
• El sistema operativo mantiene una lista de las páginas concurrentes en
memoria, siendo la página de cabeza de la lista la más antigua y la última de
la lista, la última en llegar. Ante una falta de página, se reemplaza la página
de cabeza y la nueva página se añade al final de la lista.
Inconveniente à La página más vieja puede ser muy usada por las otras.
Ejemplo: Páginas compartidas (código reentrante).
• Dos variantes FIFO usando bits R y M:
1. Extraer la página de la clase más baja empezando a buscar la más vieja.
2. “second chance” à Se inspecciona la página más vieja como víctima
potencial. Si su bit R esté a 0, se reemplaza y si está a 1 se coloca a 0 y se
pone la página al final de la lista buscando en la siguiente página de la
lista (si todas las páginas han sido referenciadas tendremos el FIFO puro).Cuantas más páginas tiene la memoria, menos faltas de páginas tiene un
programa à Anomalía de Belady: FIFO causa más faltas de página con 4
páginas que con 3 (es una curiosidad, no es un resultado importante).

4.4.4. Reemplazamiento de la página menos usada recientemente (LRU,
Least Recently Used)
Las páginas que se han usado mucho en la última instrucción probablemente
serán usadas mucho en la próxima instrucción, y las que no han sido usadas
durante muchas instrucciones no lo serán durante mucho tiempo.
Algoritmo difícil de implementar à se necesita una lista encadenada, ordenada
según tiempo de la última referencia, de todas las páginas en memoria, con
las más usadas el principio y las menos usadas al final. Esa lista hay que
procesarla en cualquier referencia a memoria (se consume mucho tiempo,
con lo cual se necesita de un hardware especial).
Dos ejemplos de implementaciones particulares:
1. Hardware viene equipado con un contador de 64 bits, C, que se auto
incrementa en cada instrucción. Cada entrada a la tabla de páginas debe
tener un gran campo que contenga el contador. Después de cada
referencia a memoria, el valor actual de C se almacena en la entrada a la
tabla de páginas para la página referenciada. Cuando sucede una falta de
página el sistema operativo saca la página que tenga el valor más pequeño
en su contador de la tabla de páginas.
2. Para N páginas físicas, el hardware LRU debe mantener una matriz de
NxN bits, todas a 0 al principio. Al referenciar una página k, el hardware
coloca todos los bits de la fila k a y todos los bits de la columna k a 0. La
página menos usada recientemente es la que tiene la fila con el valor
binario más bajo.LRU que usa una matriz.

4.4.5. Simulando LRU en software (Algoritmo NFU, No Usada
Frecuentemente – Not Frequently Used)

Algoritmo de reemplazamiento de la página no usada frecuentemente.
Requiere de un contador de software asociado con cada página e inicializado a
0. Este contador contiene las referencias a las páginas. En cada interrupción de
reloj, el sistema operativo añade el bit R (0 a 1) el contador. Cuado ocurre una
falta de página, la página con el contador más bajo es reemplazada.
Inconveniente à En un compilador de varias pasadas, las páginas muy usadas
en la pasada 1 pueden no ser reemplazadas en detrimento de
otras páginas útiles para pasadas subsecuentes. (El algoritmo
nunca olvida)
Modificación à
Algoritmo de “aging” (envejecimiento)
• Los contadores se desplazan a la derecha un bit.
• El bit R se añade al bit más izquierdo.El algoritmo de envejecimiento simula LRU en software. Se muestran seis páginas para cinco
pulsos de reloj. Los cinco pulsos de reloj se representan por los incisos del (a) al (e).
Cuando sucede una falta de página, la página cuyo contador es el más bajo se
reemplaza (página que menos ha sido referenciada en los últimos ticks de reloj).
Diferencias del algoritmo de “aging” con el LRU:

No sabemos cuál fue la última página referenciada (después del tick 3 entre
las páginas 3 y 5).

Los contadores tienen un número finito de bits (8). Sólo tenemos
referencias de los últimos 8 ticks de reloj (si cada tick de reloj se produce
aproximadamente cada 20 msg., tendremos referencia de los últimos 160
msg., lo cual puede ser suficiente).4.5. Características de diseño para sistemas paginados
Estas características se utilizan para obtener un buen rendimiento de un sistema
paginado.
Políticas de carga (criterio de selección):
1. Por demanda à Cargar las páginas cuando sean necesarias. Fáciles de
implementar.
2. Anticipatorias à Las cargan por adelantado.
Paginación por demanda:
Un proceso (al iniciar su ejecución) empieza sin ninguna página en memoria,
generando una interrupción de “falta de página” que hace que el sistema
operativo traiga la página que contiene la primera instrucción. Las restantes
páginas se irán cargando a medida que se necesiten y no por adelantado.
Paginación por adelantado:
Hay que prever el comportamiento futuro del programa basándose en su
comportamiento pasado y de la construcción del mismo. Para prever el
comportamiento, se basa en el Principio de Localidad (Postulado de Denning)
Principio de Localidad (Postulado de Denning) à
1. Las referencias de un programa tienden a acumularse en pequeñas zonas del
espacio de direcciones, que tienden a cambiar sólo de forma intermitente.
2. Durante cualquier fase de la ejecución de un proceso, sólo se referencia una
pequeña fracción de sus páginas. Dos tipos:
• Localidad Temporal: Las direcciones referenciadas recientemente tienen
una alta probabilidad de ser referenciadas en un futuro próximo.
Ejemplo: Bucles, procedimientos, pilas, etc.• Localidad Espacial: Las direcciones referenciadas tienden a acumularse de
forma que al referenciar una posición, es muy probable referenciar otra
próxima.
Ejemplo: Procesado de vectores, ejecución secuencial de código.

4.5.1. El modelo del conjunto de trabajo (working set)
Conjunto de páginas que un proceso está actualmente usando; o sea a las que se
han hecho referencia “recientemente”.
Definición formal:
w (t , h) = {página i / página i aparece en las “h” últimas referencias}
w (t, h) varía lentamente con el tiempo (se deduce del principio de localidad).
Si el conjunto de trabajo está entero en memoria, el proceso se ejecutará sin
causar muchas faltas de páginas hasta que entre en otra fase de ejecución. En
caso contrario, el programa causará muchas faltas y su ejecución será lenta. Un
programa que causa faltas de página cada pocas instrucciones, se dice que se
está azotando (thrashing).
Denning demostró que el tamaño de w(h) varía con “h”:
Modelo del conjunto de trabajo
Se carga el conjunto de trabajo entero de cada proceso en memoria antes de
hacerlo ejecutable (prepaginado). Se reduce el ritmo de falta de páginas. No se
debe de sacar nunca una página que pertenezca al conjunto de trabajo de algún
proceso.El tamaño total del conjunto de trabajo de todos los procesos no debe exceder la
memoria disponible (caso contrario se produce el azotado), por tanto, el sistema
operativo, debe reducir el grado de multiprogramación (número de procesos en
memoria central).
El sistema operativo debe saber qué páginas forman parte del conjunto de
trabajo. Si se emplea el algoritmo de “aging”, si una página no ha sido
referenciada n tick de reloj consecutivos, se saca del conjunto de trabajo.

4.5.2. Políticas de asignación local y global.
¿Cuánta memoria se asigna a los diferentes procesos ejecutables?
¿Quiere entrar la página A 6 ?
Sustitución de páginas local frente a sustitución global.
(a) Configuración original, (b) Sustitución de páginas local, (c) Sustitución de páginas global.
Reemplazamiento de página local: A cada proceso se le asigna una cantidad
fija de memoria. En la gráfica anterior, se sustituye A 5 . Si el conjunto de trabajo crece ocurrirá el azotado (incluso con páginas físicas libres), y si disminuye, se gasta memoria.Reemplazamiento de página global: Las páginas físicas se asignan dinámicamente a los procesos ejecutables. En la gráfica anterior, se sustituye B 3 . Suele ser mejor, especialmente cuando el conjunto de trabajo varía sobre la media de los procesos. El sistema debe continuamente decidir cuántas páginas física se asigna a cada proceso.
4.5.3. Tamaño de la página.
Fragmentación interna (fragmentación de página)
En promedio, cada proceso desperdicia media página.
N procesos gastan n ⋅ p , 2 siendo p el tamaño de la página. Si las páginas son
pequeñas, se desperdicia poca memoria por fragmentación interna, pero se
necesitan muchas páginas y por tanto una gran tabla de páginas. Además,
transferir, desde disco una página pequeña toma casi el mismo tiempo que una
grande.
4.6. Compartición de memoria.
En los sistemas multiprogramados, en especial los de tiempo compartido, es
normal que muchos usuarios ejecuten los mismo programas (por ejemplo un
compilador). Si se asignaran copias individuales de esos programas a cada
usuario, se desperdiciaría mucho almacenamiento primario. La solución obvia
consiste en compartir información.
La compartición reduce la cantidad de almacenamiento primario necesaria para
la ejecución eficiente de un grupo de procesos y puede hacer posible que un
sistema de servicio a más usuarios.Compartición en un sistema de paginación
La compartición debe controlarse con cuidado con respecto a la protección de la información.
En la mayor parte de los sistemas actuales que realizan compartición, los
programas se dividen en áreas separadas para código y para datos. Por tanto, se hace evidente la necesidad de identificar las páginas que se pueden o no
compartir.
La forma de compartir páginas es haciendo que ciertas entradas en la tablas de
páginas de diferentes procesos apunten a la misma página (o marco de página);
con lo cual, varios procesos compartirán esa página.
Compartición en un sistema con segmentación
Una de las ventajas que tiene la segmentación sobre la paginación es que la
segmentación es un concepto lógico y no físico.
Un segmento puede estar formado por una matriz, un procedimiento, etc.
Si se quiere compartir una estructura de datos que ocupa tres páginas y media,
en paginación se tendrá cuatro entradas apuntando a las correspondientes
páginas compartidas (por proceso que lo comparte) mientras que en un sistema
de segmentación se tendrá una simple entrada (por proceso) una vez que el
segmento se ha declarado como compartido. La situación empeora si la
estructura de datos es dinámica ya que la información puede crecer/disminuir y
ocupar/desocupar nuevas páginas. Toda esta gestión se tendrá que realizar en
tiempo de ejecución en un sistema de paginación mientras que en uno de
segmentación puede crecer sin afectarlo.5. Swapping (Intercambio)
En sistemas en tiempo compartido se puede presentar la situación de que la
suma de los tamaños de los procesos de usuario y sistema sea mayor que la
memoria principal disponible.
Las técnicas de swapping consisten en intercambiar (momentáneamente) entre
memoria principal y disco aquellos procesos (o la parte de los procesos que se
tenga en memoria principal) que no se van a ejecutar antes.
NOTA:
Al intercambiarse el programa a disco, sólo se copia la memoria usada (y no
toda la asignada).
La zona de disco donde se guardan momentáneamente los procesos se llama
área de swap.
Consideraciones con el área de swap del disco:
• En algunos sistemas, a un proceso en memoria no se le asigna espacio en
disco. Cuando se intercambia, se le debe de asignar espacio en el área de
swap del disco. En cada intercambio, podrá ser colocado en cualquier lugar
del disco.
• Otros sistemas, al crear un proceso le asignan espacio de swap en disco para
cuando se intercambie. Al finalizar el proceso, se libera ese espacio.
El espacio de disco de un proceso se debe asignar como un número entero de
bloques de disco.
Con particiones fijas y poca memoria, el swapping es muy poco eficiente.

Directivas de cuenta (Windows 7)


Para poder configurar las Directivas de cuenta, en el terminal ponemos gpedit.msc y se nos abre una ventana en la que aparece la configuración del equipo y la configuración de usuario.

Nos metemos en configuración de equipo → configuración de windows → configuración de seguridad → directivas de cuenta

Una vez aquí, encontramos Directivas de contraseñas, y Directiva de bloqueo de cuenta.
Entramos en directiva de contraseñas. Aquí aparecen las opciones para poder cambiar la vigencia de la contraseña.
La vigencia máxima de contraseña determina el número de diás que el usuario puede utilizar la contraseña antes de volver a cambiarla de nuevo. En nuestro caso pone que la vigencia máxima es de 42 días.
La vigencia mínima de la contraseña determina el tiempo en que puede usarse una contraseña antes de que el usuario pueda cambiarla.
Una vez hayamos hecho un cambio en alguna de las directivas, abrimos el terminal y escribimos cmd, y en la consola ponemos gpupdate /force para forzar los cambios, ya que como son datos del sistema se actualizan automáticamente cada cierto tiempo.

miércoles, 3 de junio de 2015

Practicar Linux online

Un poco tarde, pero quizás os ayude de cara al examen.
Es una página web con un emulador de Linux, para practicar en cualquier parte sin necesidad de máquina virtual ni instalaciones de ningún tipo.

http://bellard.org/jslinux/

Os dejo una captura del la shell:


viernes, 22 de mayo de 2015

Operaciones algebraicas

El uso de expr el cual utilizaremos en multitud de ocasiones para hacer operaciones aritméticas, u operaciones con cadenas y un sinfín de cosas…
La sintaxis de expr es la siguiente:

                             expr operación_a_evaluar

Operaciones numéricas:

  • expr num1 + num2 –> Devuelve la suma de num1 + num2 
  • expr num1 - num2 –> Devuelve la resta de num1 - num2 
  • expr num1 * num2 –> Devuelve el producto de num1 * num2 
    • En esta operación hay que destacar que el "*" debe de tener "\" delante: "\*" 
  • expr num1 / num2 –> Devuelve la división de num1 / num2 
  • expr num1 >= num2 –> Devuelve 0(true) si num1 >= num2 
  • expr num1 > num2 –> Devuelve 0(true) si num1 > num2 
  • expr num1 <= num2 –> Devuelve 0(true) si num1 < num2 
Ejemplos en un script :



lunes, 11 de mayo de 2015

Instalar desde comando en Fedora/RedHat

Aquí os dejo una documentación sobre el comando yum, usado para instalar desde terminal en distribuciones basadas en RedHat como puede ser Fedora

Guía de uso del comando Yum

Las principales diferencias entre apt-get y yum son las opciones update/upgrade

A continuación os dejo la comparativa


Opción apt-get yum
updateActualiza el listado de paquetesActualiza los paquetes instalados
upgradeActualiza los paquetes instaladosActualiza la versión de la distribución
dist-upgradeActualiza la versión de la distribución
-


yum está siendo sustituido desde la versión Fedora 18 al comando dnf el cuál es prácticamente similar a yum, os dejo a continuación el manual de dicho comando

Manual dnf

Aquí os dejo una información interesante sobre dnf

"En primer lugar, Yum (Yellowdog Updater Modified) estará presente en Fedora como gerenciador de paquetes principal, pero DNF se incluye como una solución alternativa y experimental, debido a los beneficios de la herramienta, mejor soporte de idiomas y el aumento en la velocidad de rendimiento.
Otra novedad de DNF es la resolución de dependencias. DNF mostró un mejor rendimiento, menor consumo de memoria y que es capaz de “solucionar de dependencias”, basándose en RPM. En la práctica, DNF utiliza la misma sintaxis que Yum, pero el back-end utiliza algunas bibliotecas específicas, tales como libsolv y hawkey.
El proyecto se encuentra disponible en GitHub. Allí vas a poder encontrar el paquete de documentación y el código fuente escrito en Python."

miércoles, 22 de abril de 2015

LINUX - COMANDO AWK


LINUX

COMANDO awk

Procesamiento de archivos generalizado


El comando awk es un lenguaje de programación. 

Sin embargo, muchas cosas se pueden hacer sin mayores conocimientos de awk.
awk lee lineas de un archivo. Cada linea se parte en campos, según un separador, por defecto espacio en blanco. 
A cada linea se le aplica uno o mas procedimientos de awk. Un procedimiento consta de dos partes:

  /patron/{accion}

El patrón es una expresión regular, igual que grep o sed; la acción es un "programa", que se aplica a los campos de cada linea.
Veamos unos ejemplos:

   awk '{print $1}' arch

Notase el uso de las comillas, necesarias para evitar problemas con el shell. Imprime el primer campo de cada linea-- es decir, imprime la primera columna de un archivo.

   awk '{print $2, $1}' arch

Imprime la segunda, seguida por la primera, columna de un archivo
También pueden usarse expresiones aritméticas:

   awk '{print $1*$1, $2 - 5.0}' arch 

Lo cual imprime el cuadrado de la primera columna, etc.
Seleccionemos las lineas que contienen el texto "Hidrogeno"

   awk '/Hidrogeno/{print $1, $2*3.1416}' arch

Si el programa de awk es muy complicado, puede residir en un archivo:

   awk -f miprog arch

Esto le aplica el programa "miprog" al archivo awk.
Los seleccionadores BEGIN y END seleccionan procedimientos que se ejecutan respectivamente al principio y fin de procesamiento:

   awk '{s = s + $1}
         END{print s}' arch


(notase que se puede dar retorno de linea dentro de las comillas.) Este programa suma la primera columna del archivo arch. El programa se basa en la (afortunada) casualidad que awk pone todas las variables numéricas a cero inicialmente. Una variable (s en el ejemplo anterior es numérica cuando se usa aritmética-mente.)

Fuente: http://www.linuxfocus.org/



Os dejo este link donde encontrareis mucha mas información y ejemplos relacionados al comando awk:





martes, 14 de abril de 2015

VirtualBox: Cambiar UUID disco duro virtual

Copiar imágenes de discos virtuales (ficheros.vdi) es un modo sencillo de duplicar el disco, en aquellos casos en los que queremos evitar tener que reinstalar el sistema operativo de cero.


Escribir en una línea de comandos la siguiente  orden:

vboxmanage internalcommands sethduuid /path/to/virtualdisk.vdi


viernes, 10 de abril de 2015

su, sudo y sudoers

Hola a todos,
En clase hemos visto el uso de la orden su y sudo para realizar tareas de administrador con usuarios que no son root.
Para realizar sudo aunque el usuario no sea root tiene que pertenecer a un grupo de usuarios denominado sudoers. Los privilegios de los usuarios sudoers y otros aspectos de configuración se pueden encontrar en el fichero /etc/sudoers
Cuando se realiza una orden mediante sudo por defecto se guarda la contraseña de acceso 15 minutos. Podríamos pedirla siempre (configurando un tiempo de 0 minutos) o no pedirla más (tiempo negativo) añadiendo un registro de Defaults en el fichero /etc/sudoers. Con la siguiente línea de ejemplo la estableceríamos en 5 minutos:

  • Defaults timestamp_timeout=5


Extraído de http://www.formandome.es/linux/configuracion-fichero-sudoers-en-ubuntu/

jueves, 9 de abril de 2015

Instalar Linux Mint 17.1

Aunque ya tendríais que saber como se instala una distribución linux,..., por si acaso... hoy... instalar Linux Mint 17.1

https://www.youtube.com/watch?v=XKI024wUTUw


En el vídeo se muestra como instalar Linux Mint 17.1 en una memoria USB para arrancar directamente, pero vale también para instalación en disco duro.

Además los pasos para instalar linux son muy similares independientemente de la distribución elegida.

¡Un saludo!

Guillermo.


miércoles, 25 de marzo de 2015

Bienvenidos

¡¡ Bienvenidos al blog del Ciclo Formativo de Grado Superior Desarrollo de Aplicaciones Web !!

Vamos a utilizar este blog para comentar información respecto a la tercera evaluación del módulo Sistemas Informáticos en el cual trabajaremos con Sistemas Operativos Linux.

Concretamente veremos la distribución Linux Mint.

http://www.linuxmint.com/




¡¡Un saludo a todos!!!

Guillermo.