Programando en Python I, básico

En esta primera entrada de programación de python, y según va mi aprendizaje realizaremos un programa para calcular el área y perímetro de un cuadrado, dando el lado del cuadrado.


lado=float(input(«Dame el lado del cuadrado: «))
perimetro=4*lado
area=lado**2
print(«El area del cuadrado es:», area)
print(«El perímetro del cuadrado es:», perimetro)


En la primera linea se solicita la introducción del lado del cuadrado. segunda y tercera, son las formulas de perímetro y área del cuadrado. Cuarta y quinta, decimos que nos muestre la resolución.

HDD Regenerator

HDD Regenerator es una utilidad que permite arreglar los sectores defectuosos que pueda tener nuestro disco duro.

HDD regenerator NO FUNCIONA bajo windows, sino que se debe bootearlo fuera de windows.

Arrancamos el programa desde el booteable, una vez que haya arrancado desde la unidad de USD, seleccione la unidad que desea analizar

hdd01

A continuación, tenemos tres opciones

hdd02

Elegimos la que nos convenga y “Enter”

Ahora comienza el proceso mas largo. Como se puede ver, HDD Regenerator le permite monitorear qué sectores han sido escaneados, diagnosticado, y se recuperó, mientras la unidad se está escaneandohhd7

Como puede ver, HDD Regenerator es una poderosa herramienta para cualquiera que busque una solución para arreglar los sectores defectuosos.

Si usted desea reparar su principal unidad de disco duro, disco duro externo o una unidad flash USB, HDD Regenerator es la herramienta perfecta para hacer el trabajo, mientras que el mantenimiento de un ambiente seguro para sus datos.

Creación de nuevos usuarios en Windows 7 (II) – Directiva de contraseña

A la hora de poner la contraseña -tanto si la pone el administrador como si la pone el nuevo usuario- podemos dar unas directrices para que esa contraseña sea mas segura y no poner una contraseña simple y de fácil desbloqueo por fuerza bruta.

Para ello acudiremos una vez mas a «Herramientas administrativas» dentro del Panel de control

usuarios01

Sobre la nueva ventana pincharemos en «Directiva de seguridad local»

directivas01

Y en la nueva ventana, en el árbol de la izquierda sobre «Directivas de cuenta» y «Directiva de contraseña»

directivas02

En el panel central nos saldrán cinco directivas que podremos modificar para blindar la seguridad en las contraseñas de todos los usuarios:

  • Almacenar contraseñas con cifrado reversible:  esta configuración de seguridad determina si el sistema operativo almacena contraseñas con cifrado reversible.Esta directiva proporciona compatibilidad para aplicaciones que usan protocolos que exigen el conocimiento de la contraseña del usuario para fines de autenticación. Almacenar contraseñas con cifrado reversible es fundamentalmente lo mismo que almacenar versiones de texto simple de las contraseñas. Por esta razón, esta directiva no debería habilitarse nunca, a menos que los requisitos de la aplicación tengan más importancia que la necesidad de proteger la información de contraseñas.
  • Exigir historial de contraseñas: esta configuración de seguridad determina el número de nuevas contraseñas únicas que deben asociarse a una cuenta de usuario antes de poder reutilizar una contraseña antigua. El valor debe estar comprendido entre 0 y 24 contraseñas.

    Esta directiva permite a los administradores mejorar la seguridad, ya que garantiza que no se reutilicen continuamente contraseñas antiguas.

  • La contraseña debe cumplir los requisitos de complejidad: esta configuración de seguridad determina si las contraseñas deben cumplir los requisitos de complejidad.

    Si se habilita esta directiva, las contraseñas deben cumplir los siguientes requisitos mínimos:

    No contener el nombre de cuenta del usuario o partes del nombre completo del usuario en más de dos caracteres consecutivos
    Tener una longitud mínima de seis caracteres
    Incluir caracteres de tres de las siguientes categorías:
    Mayúsculas (de la A a la Z)
    Minúsculas (de la a a la z)
    Dígitos de base 10 (del 0 al 9)
    Caracteres no alfanuméricos (por ejemplo, !, $, #, %)
    Estos requisitos de complejidad se exigen al cambiar o crear contraseñas.

  • Longitud mínima de la contraseña: esta configuración de seguridad determina el número mínimo de caracteres que debe contener la contraseña de un usuario. Puede establecer un valor comprendido entre 1 y 14 caracteres, o puede establecer que no se exija contraseña alguna estableciendo el número de caracteres en 0.
  • Vigencia máxima de la contraseña: esta configuración de seguridad determina el período de tiempo (en días) en que puede usarse una contraseña antes de que el sistema solicite al usuario que la cambie. Puede establecer las contraseñas para que expiren tras un número de días comprendido entre 1 y 999, o puede especificar que las contraseñas no expiren nunca estableciendo el número de días en 0.
  • Vigencia mínima de la contraseña: Esta configuración de seguridad determina el período de tiempo (en días) en que puede usarse una contraseña antes de que el usuario pueda cambiarla. Puede establecer un valor entre 1 y 998 días, o puede permitir que se realicen cambios de forma inmediata estableciendo el número de días en 0.

    La vigencia mínima de la contraseña debe ser menor que la vigencia máxima de la contraseña, salvo que esta última esté establecida en 0, lo que indica que las contraseñas no expirarán nunca. Si la vigencia máxima se establece en 0, la vigencia mínima podrá establecerse en cualquier valor comprendido entre 0 y 998.

    Configure la vigencia mínima de la contraseña de modo que sea mayor que 0 si desea que sea efectiva la configuración Exigir historial de contraseñas. Sin una vigencia mínima, los usuarios pueden recorrer las contraseñas repetidamente hasta llegar a una contraseña favorita antigua.

Creación de nuevos usuarios en Windows 7

Para crear nuevos usuarios en tu PC con Windows 7, podemos acceder desde el panel de control de Windows por cuentas de usuario, aunque para mi, lo mejor para crear nuevos usuarios es accediendo por medio del panel de control a «Herramientas administrativas»

usuarios01

Ahora pinchamos en «Administración de equipos»

usuarios02

En el árbol de la izquierda pinchamos sobre «Usuarios y grupos locales» y sobre la carpeta «Usuarios»; en el panel central nos saldrán todos los usuarios existentes. Si pinchamos sobre el fondo blanco de este panel con el botón derecho del ratón nos saldrá un menú como en el de la imagen de abajo, en el tenemos la posibilidad de crear un Usuario nuevo

usuarios03

Rellenamos los campos de la nueva ventana y ya habremos creado un usuario estándar nuevo

usuarios04

Crear pendrive booteable con YUMI

Yumi es una herramienta que permite crear pendrives USB booteables; dentro del usb booteable podremos tener: sistemas operativos, antivirus, herramientas de diagnóstico, etc… Además con Yumi podrás seguir usando el pendrive como almacenamiento.

Podemos descargarlo desde aqui.

Para hacerlo booteable seguiremos estos pasos:

  1. «Step 1» Seleccionamos la unidad bootear (pendrive que queremos bootear)yumi01
  2. «Step 2» Seleccionamos que es lo que queremos bootear en nuestro pendrive (Ejem. Windows, Hiren´s, ….) En este caso es el S.O. Ubuntu 10.10yumi02.png
  3.  «Step 3» Buscamos donde se encuentra la ISO de lo que queremos bootear.yumi03

Hub o concentrador; switch o conmutador.

Un hub o concentrador es un dispositivo que canaliza el cableado de una red para ampliarla y repetir la misma señal a través de diferentes puertos.hub-concentrador
Se le llama hub o concentrador al dispositivo tecnológico que tiene la capacidad de centralizar la función de una red con el propósito de ampliarla hacia otros puertos utilizando la misma señal que es repetida y emitida sucesivamente. Existen dos tipos:

  • Hubs activos: La mayoría de los hubs son activos, regeneran y retransmiten las señales del mismo modo que un repetidor. Como generalmente los hubs tienen de ocho a doce puertos para conexión de equipos de la red, a menudo se les llama repetidores multipuerto. Los hubs activos requieren corriente eléctrica para su funcionamiento.
  • Hubs pasivos: Algunos tipos de hubs son pasivos. Actúan como puntos de conexión y no amplifican o regeneran la señal; la señal pasa a través del hub. Los hubs pasivos no necesitan corriente eléctrica para funcionar.

Un switch o conmutador  es un dispositivo digital de lógica de interconexión de redes de computadores que opera en la capa 2 (nivel de enlace de datos) del modelo OSI. Su función es interconectar dos o más segmentos de red, pasando datos de un segmento a otro de acuerdo con la dirección MAC de destino de las tramas en la red.

switch

Los switchs o conmutadores se utilizan cuando se desea conectar múltiples redes, fusionándolas en una sola

Los switchs o conmutadores poseen la capacidad de aprender y almacenar las direcciones de red de nivel 2 (direcciones MAC) de los dispositivos alcanzables a través de cada uno de sus puertos. Por ejemplo, un equipo conectado directamente a un puerto de un conmutador provoca que el conmutador almacene su dirección MAC. Esto permite que, a diferencia de los concentradores o hubs, la información dirigida a un dispositivo vaya desde el puerto origen al puerto de destino

– El switch es capaz de discriminar la información proveniente del ordenador de origen, y es enviada al ordenador de destino tomando la dirección MAC. Mientras que el hub envía todos los datos a todas las máquinas que responden.

– Los switch disminuyen los problemas de colisión de tramas, debido a la disminución de nodos que se transmiten en un segmento de red.

Ethernet. Estandar IEEE 802, subcapas LLC y MAC

Ethernet, subcapas LLC y MAC

El estándar para Ethernet es el 802.3. El IEEE quería asegurar que sus estándares fueran compatibles con los del modelo OSI de la Organización Internacional para la Estandarización (ISO). Los estándares IEEE 802.3 debían cubrir las necesidades de la Capa 1 y de las porciones inferiores de la Capa 2 del modelo OSI.

La subcapa Control de enlace lógico (LLC) el estándar IEEE 802.2 describe las funciones de la subcapa LLC El Control de enlace lógico se encarga de la comunicación entre las capas superiores y el software de red, La subcapa LLC toma los datos del protocolo de la red, que generalmente son un paquete IPv4, y agrega información de control para ayudar a entregar el paquete al nodo de destino. El LLC puede considerarse como el controlador de la Tarjeta de interfaz de red (NIC)

La subcapa MAC de Ethernet tiene dos responsabilidades principales: Encapsulación de datos. Delimitación de tramas La capa MAC agrega un encabezado y un tráiler a la PDU de Capa 3. Ayuda a la agrupación de bits en el nodo receptor. Ofrece sincronización entre los nodos de transmisión y recepción. Direccionamiento Cada encabezado contiene la dirección física (dirección MAC) que permite a una trama se envíe a un nodo de destino. Detección de errores. Cada trama de Ethernet contiene un tráiler con una comprobación cíclica de redundancia (CRC) de los contenidos de la trama. Si estos dos cálculos de CRC coinciden, puede asumirse que la trama se recibió sin errores. Control de Acceso al Medio. La subcapa MAC controla la colocación de tramas en los medios y el retiro de tramas de los medios. Esto incluye el inicio de la transmisión de tramas y la recuperación por fallo de transmisión debido a colisiones. El método de control de acceso al medio para Ethetnet es CSMA/CD. Todos los nodos (dispositivos) en ese segmento de red comparten el medio. Todos los nodos de ese segmento reciben todas las tramas transmitidas por cualquier nodo de dicho segmento.

Transferencia FTP de un archivo, protocolo TCP/IP

Transferencia FTP de un archivo, protocolo TPC/IP

  1. Conexión y solicitud del cliente al servidor del archivo a descargar.
  1. OK del servidor a la conexión y al archivo a descargar.
  1. Inicio de transferencia de datos.

a) En el sistema operativo del servidor, la capa TCP al archivo solicitado primero le asigna una secuencia con el número de bits que tiene (1500 B), si tuviera mucho peso partiría el archivo en trozos, en nuestro caso no es así. Después asigna los dos puertos implicados en la comunicación, puerto de origen -192.168.1.2- y el puerto de destino -215.22.1.13-.

b) La capa TCP llama a la capa IP y le pasa el bloque. La capa IP asigna las direcciones IP del servidor y del cliente, además asigna también un número en el cual identifica que es un bloque con protocolo TCP.

c) Cuando al paquete está listo, se manda a la capa de abajo, capa de enlace. Debemos de reconocer dentro de la LAN a que máquina debe de ir el paquete, para ello los dispositivos Ethernet asignan a cada máquina una dirección MAC (hay una MAC diferente por cada máquina en el mundo).

  1. Llegada al cliente:

a) Cuando el paquete llega al cliente, su tarjeta de red lee la dirección MAC y sabe que el paquete es para él, también lee en la cabecera Ethernet que hay una siguiente capa para analizar el paquete, la capa IP.

b) La capa IP le comunica que es su destino, además de comunicarle la IP de origen para poder enviarle sus respuestas. Manda el paquete a la capa superior que según la cabecera IP es la capa TCP.

c) La capa TCP tiene que hacer dos cosas: mandar el paquete a la capa de arriba, a la aplicación cliente de FTP y responder al servidor diciéndole que ha recibido el paquete. En esa respuesta construye un nuevo paquete, la cabecera TPC tiene un campo ACK con el mismo valor que la secuencia del paquete, e intercambia los puertos de origen y destino. La capa IP también construye una cabecera IP adecuada al paquete.

Para qué sirve y como funciona el protocolo DNS.

Domain Name System o en Español, el Sistema de Nombres de Dominio.

Los servidores DNS, son aquellos que se encargan de los nombres de Dominio que escribimos en el navegador.

Cuando escribimos en nuestro navegador una dirección web, enviamos al servidor DNS una consulta, de la dirección web que estás solicitando.

Esta, nos genera una comunicación de cuatro capas de protocolos en una comunicación UDP: capa física, capa de enlace, capa de red y capa de transporte.

– Consulta DNS: petición de página/url en el navegador (http://google.com)
consultadns

– Capa de transporte:
cabeceraudp

– Capa de red:
cabeceraip

– Capa de enlace:
cabeceraethernet

– Capa física: debemos de tener una conexión física entre cliente y servidor, por medio de cables, radio o por cualquier otro medio.

 

Esto es como si le estuviéramos preguntando al servidor DNS “¿Cuál es la IP que se relaciona con el siguiente nombre de dominio? Entonces el servidor DNS devuelve a tu ordenador la petición realizada. De esta forma, el servidor se encarga de buscar la IP correspondiente al nombre de dominio que solicitaste.

peticion_dns

Algoritmos de planificación en Sistemas Operativos

La administración del procesador, es la asignación de los procesadores físicos a los procesos, lo que permite que estos últimos realicen trabajo. La planificación se refiere, a cuándo deben asignarse los procesadores y a qué procesos.

Los diferentes estados tienen una relación directa con las denominadas prioridades, que son aquellas que el administrador del sistema, o el propio sistema asignan a cada proceso. De ello va a depender que un proceso se ejecute en más o menos tiempo.

Se pueden establecer prioridades en función de la necesidad de ejecución de algunos programas. Los programas que más se ejecutan, es decir los más necesarios, tendrán prioridad de ejecución sobre aquellos que son menos necesarios y, por tanto, se ejecutan muy de vez en cuando.

Con los algoritmos de planificación conseguimos, en cada momento, decidir que proceso ha de ejecutarse y porque.

  • Tiempo útil (U) o real de ejecución. Es el tiempo de uso de la CPU.
  • Eficiencia (EF), eficacia o utilización. Se expresa como un porcentaje del tiempo medio de utilización, es decir, el porcentaje de tiempo en el que el procesador está ocupado. EF=(U/T)*100%
  • Rendimiento o Productividad (P). Es una medida del número de procesos completados por unidad de tiempo. Indica la cantidad de trabajo que se está llevando a cabo. Si N es el número de procesos completados en S segundos, P= N/S
  • Tiempo de retorno o regreso (R). Es el intervalo de tiempo que transcurre desde que un proceso se crea o presenta hasta que se completa por el sistema o finaliza. Es la suma del tiempo de ejecución real o útil y el tiempo consumido en la espera por los recursos. R=E+U
  • Tiempo de espera (E). Es el tiempo que el proceso espera hasta que se le concede el procesador. Puede resultar una medida más adecuada de la eficiencia del sistema, ya que se elimina de la medida el tiempo que tarda en ejecutarse él mismo.
  • Tiempo de respuesta. Se denomina así al intervalo de tiempo que transcurre desde que se señala un evento hasta que se ejecuta la primera instrucción de dicho evento, es decir, es el tiempo que se está esperando en el estado de preparado o bloqueado para empezar a ejecutarse.
  • Tiempo de uso de CPU total del proceso (T). El criterio se de selección de un algoritmo se suele basar en la maximización o minimización de una función de los parámetros anteriores. Por ejemplo, maximizar la eficiencia y rendimiento y minimizar el tiempo de espera. Existen distintos algoritmos empleados para realizar la planificación, algunos de ellos son los siguientes:
  • Algoritmo FCFS (First Came First Serve): Primero en llegar primero en ser servido. Da servicio según orden de llegada; es el algoritmo más sencillo y el de menor rendimiento.
  • Algoritmo SJF (Shortest Job First): primera tarea más corta. El trabajo más corto se ejecuta primero. Este algoritmo asigna la CPU al trabajo que requiere menor tiempo de proceso. Si dos trabajos tienen el mismo tiempo se seleccionan según el algoritmo FCFS. La dificultad reside en saber cuál de los dos procesos en espera de ser ejecutados tendrá menor tiempo de proceso, para ello se emplean algoritmos de predicción que calculan el siguiente tiempo de ejecución de un proceso como una media exponencial de los tiempos de las últimas ejecuciones de esa parte de código. El problema que puede presentarse es que vayan entrando a la cola de espera de ejecución los procesos más cortos y los procesos largos que estén esperando, no se ejecuten nunca.
  • Algoritmo RR (Round Robin): Algoritmo de rueda o prioridad circular. A todos los procesos en el estado preparado se les asigna un tiempo de ejecución denominado “cuanto” o “quantum”. El planificador va asignando el procesador a cada tarea de forma secuencial por el quantum de tempo definido. Si un proceso necesita un tiempo de ejecución mayor de su quantum asociado, una vez transcurrido este y si existen más procesos en espera de ejecución, se colocan al final de la lista del estado preparado y el procesador pasa al proceso que queda en cabeza de la lista.
  • Algoritmo por prioridades. Se asocia una prioridad a cada proceso y la CPU se asigna al trabajo con prioridad más alta en cada momento. Normalmente, si se está ejecutando un proceso de prioridad media y entra un proceso de prioridad mayor, se requisa la CPU al primer proceso y se le entrega al proceso de mayor prioridad.

Ejemplo

Sea la siguiente descripción de carga; suponiendo el orden de llegada indicado

Trabajo Tiempo CPU=U Prioridad
1 6 3
2 2 2
3 3 4
4 1 1
5 4 2

Representamos mediante el diagrama de Gantt el acceso a la CPU al aplicar planificación:
– FCFS
– RR (q = 1)
– SFJ
– por prioridad.

En cada caso, calculamos la eficiencia, el tiempo de retorno y de espera de cada trabajo.

– Planificación FCFS

Diagrama de Gantt011

01

– Planificación Robin Round o de rueda

Diagrama de Gantt022– 

rr

– Planificación SFJ

Diagrama de Gantt033

03

– Planificación por prioridad

Diagrama de Gantt044

04

– Resumen con los distintos resultados

resumen

Los mejores resultados son los del algoritmo de SJF, ya que su eficiencia es la mas alta y sus tiempos medios son los más bajos.