Mostrando entradas con la etiqueta Tecnology. Mostrar todas las entradas
Mostrando entradas con la etiqueta Tecnology. Mostrar todas las entradas
Anteriormente era bastante difícil de creer que Microsoft y Google pudieran colaborar en algún desarrollo, sin embargo, hoy en día las grandes compañías han formado alianzas para mejorar algunas tecnologías web. En este caso Google y Microsoft han contribuirán para mejorar el Framework AngularJS, el cual ha llegado para brindar una serie de mejoras para los desarrolladores web.

En ng-conf en Salt Lake City, el equipo angular anunció que ha estado trabajando en estrecha colaboración con el equipo de TypeScript de Microsoft para desarrollar Angular 2, y converge los idiomas de TypeScript y AtScript.

TypeScript es un superconjunto de JavaScript, el cual ofrece características adicionales, pero compila de nuevo en JavaScript plano.

Angular es uno de los Frameworks más populares de JavaScript, pero la versión dos ha sido decepcionante con los desarrolladores, ya que no ofrece ninguna opción de migración desde la primera versión de angular y trae una serie de cambios importantes que requieren aprender de nuevo algunos conceptos.

Una vez mas vemos que Google y Microsoft pueden colaborar en un proyecto tan grande, lo cual es magnifico. Esto demuestra una vez más que Microsoft está abriendo lentamente y dando el soporte a tecnologías libres.


La terminal es muy sencilla y a la vez sumamente poderosa, te permite interactuar con el sistema operativo sin necesidad de una interfaz gráfica ¿no es acaso maravillosa?

Si bien las distribuciones Linux hacen cada vez más completas y funcionales sus GUI (del inglés graphical user interface), la terminal siempre ha estado y estará allí para ayudarte y no lo contrario, como quizá hayas pensado. De hecho, en algunas distribuciones es el primer contacto entre el usuario y el sistema.

¿Cuando instalaste Linux por primera vez imaginaste que podrías administrar todo tu sistema desde una simple línea de comandos?. Si comienzas a usar la terminal con regularidad, no solo le perderás el miedo, sino que notaras que es una potente herramienta que permite mantener y en algunos casos hasta salvar tu instalación de esos indeseables problemas que ocurren justo después de una gran actualización del sistema, por solo nombrar un ejemplo.

Anteriormente les habíamos hablado de algunos comandos básicos, a continuación te presentamos 10 más para que sigas aprendiendo sobre las bondades de la terminal en Linux.

Cat


Cat (de concatenar), es una maravillosa utilidad que nos permite visualizar el contenido de un archivo de texto sin la necesidad de un editor. Para utilizarlo solo debemos mencionarlo junto al archivo que deseamos visualizar:

$ cat prueba.txt

Ls


Ls (de listar), permite listar el contenido de un directorio o fichero. La sintaxis es:

$ ls /home/directorio


El comando ls tiene varias opciones que permiten organizar la salida, lo que resulta particularmente útil cuando es muy grande. Por ejemplo, puedes usar -a para mostrar los archivos ocultos y -l para mostrar los usuarios, permisos y la fecha de los archivos. Así como para todos los comandos Linux, estas opciones pueden combinarse, terminando en algo como:

$ ls -la /home/directorio

Cd


Cd (de change directory o cambiar directorio), es como su nombre lo indica el comando que necesitarás para acceder a una ruta distinta de la que te encuentras. Por ejemplo, si estas en el directorio /home y deseas acceder a /home/ejercicios, seria:

$ cd /home/ejercicios


Si estás en /home/ejercicios y deseas subir un nivel (es decir ir al directorio /home), ejecutas:

$ cd ..

Touch


Touch crea un archivo vacío, si el archivo existe actualiza la hora de modificación. Para crear el archivo prueba1.txt en /home, seria:

$ touch /home/prueba1.txt

Mkdir


Mkdir (de make directory o crear directorio), crea un directorio nuevo tomando en cuenta la ubicación actual. Por ejemplo, si estas en /home y deseas crear el directorio ejercicios, sería:

$ mkdir /home/ejercicios


Mkdir tiene una opción bastante útil que permite crear un árbol de directorios completo que no existe. Para eso usamos la opción -p:

$ mkdir -p /home/ejercicios/prueba/uno/dos/tres

Cp


Cp (de copy o copiar), copia un archivo o directorio origen a un archivo o directorio destino. Por ejemplo, para copiar el archivo prueba.txt ubicado en /home a un directorio de respaldo, podemos usar:

$ cp /home/prueba.txt /home/respaldo/prueba.txt


En la sintaxis siempre se especifica primero el origen y luego el destino. Si indicamos un nombre de destino diferente, cp copiará el archivo o directorio con el nuevo nombre.

El comando también cuenta con la opción -r que copia no sólo el directorio especificado sino todos sus directorios internos de forma recursiva. Suponiendo que deseamos hacer una copia del directorio /home/ejercicios que a su vez tiene las carpetas ejercicio1 y ejercicio2 en su interior, en lugar de ejecutar un comando para cada carpeta, ejecutamos:

$ cp -r /home/ejercicios /home/respaldos/

Mv


Mv (de move o mover), mueve un archivo a una ruta específica, y a diferencia de cp, lo elimina del origen finalizada la operación. Por ejemplo:

$ mv /home/prueba.txt /home/respaldos/prueba2.txt


Al igual que cp, en la sintaxis se especifica primero el origen y luego el destino. Si indicamos un nombre de destino diferente, mv moverá el archivo o directorio con el nuevo nombre.

Rm


Rm (de remove o remover), es el comando necesario para borrar un archivo o directorio. Para borrar el archivo prueba.txt ubicado en /home, ejecutamos:

$ rm /home/prueba.txt


Este comando también presenta varias opciones. La opción -r borra todos los archivos y directorios de forma recursiva. Por otra parte, -f borra todo sin pedir confirmación. Estas opciones pueden combinarse causando un borrado recursivo y sin confirmación del directorio que se especifique. Para realizar esto en el directorio respaldos ubicado en el /home, usamos:

$ rm -fr /home/respaldos


Este comando es muy peligroso, por lo tanto es importante que nos documentemos bien acerca de los efectos de estas opciones en nuestro sistema para así evitar consecuencias nefastas.

Pwd


Pwd (de print working directory o imprimir directorio de trabajo), es un conveniente comando que imprime nuestra ruta o ubicación al momento de ejecutarlo, así evitamos perdernos si estamos trabajando con múltiples directorios y carpetas. Su sintaxis seria:

$ pwd

Clear


Clear (de limpiar), es un sencillo comando que limpiara nuestra terminal por completo dejándola como recién abierta. Para ello ejecutamos:

$ clear
Los diferentes estados por los cuales pasa un proceso en un sistema operativo, son los siguientes:


  • Nuevo: Es cuando la creación del proceso es solicitada en espera de la asignación de los recursos necesarios para su ejecución. Por ejemplo, la asignación de memoria RAM para su correcto funcionamiento.
  • Listo: Después de pasar por el estado nuevo, el proceso es creado y se agrega a la lista de procesos listos en espera para su ejecución.
  • En ejecución: De acuerdo al tipo de algoritmo utilizado para la selección de procesos a ejecutar, se seleccionara de la lista de procesos Listos para su ejecución, el tiempo que permanecerá en este estado será respecto al algoritmo seleccionado, el cual puede ser por ejemplo: hasta que se termine su tiempo de vida o el quantum seleccionado para dicho proceso.
  • Bloqueado: En este estado entran los procesos que han sido bloqueados de cualquiera de los anteriores estados. Saldrán de acuerdo a su selección hacia la lista de Listos.
  • Terminado: En este estado entran los procesos que han finalizado o bien han sido eliminados. Las estructuras de estos procesos estarán en espera de ser limpiadas por el sistema operativo.
Xpiria Z


En la ultima actualización de la aplicación de busqueda por voz de el gigante de internet se introdujo un problema con algunos de los teléfonos de la serie Z de sony el cual es muy difícil de detectar

Consecuencias

la principal molestia de este error es el uso del dispositivo cuando se conectan los manos libres ya que las llamadas disminuyen su volumen demasiado hasta el punto de no escuchar nada, adicional mente todas las funciones de audio se ven interrumpidas de la mismas forma y quisas la que mas causa molestia es la imposibilidad de usar el radio.

Causa

no es común que se active una función de una aplicación y dañe otra que no tenga nada que ver o que ni siquiera sea del mismo desarrollador, pero este es el caso de este error al activar la función "OK Google" en el Google Now la radio deja de encender

OK Google

Solución

Lo que tienes que hacer es acceder al listado de aplicaciones que se tienen instaladas en el dispositivo y ejecutar la que se llama Google. Aparece una pantalla en la que hay una Barra de búsqueda en la parte superior que tiene un icono con tres líneas horizontales que es el que tienes que pulsar. Ahora, de las opciones que aparecen, debes seleccionar Ajustes.

En la siguiente pantalla debes localizar la opción Voz y, a continuación utiliza Detección de “OK Google”. Aquí es donde están los deslizadores que debes deshabilitar para que el terminal no ejecute el asistente al detectar “OK Google”. Una vez hecho esto, puedes comprobar que el servicio se ha desactivado y, por lo tanto, el trabajo está realizado.






Es una estrategia de organización de la memoria que consiste en dividir la memoria en porciones de igual tamaño, a dichas porciones se las conoce como marcos de página o simplemente como páginas. Las páginas están definidas por un número de página, que identifica de forma única a cada página (dentro del espacio de memoria de un proceso). Cada página se asigna en exclusividad a un proceso.

Desde el punto de vista de la paginación la traducción de las direcciones de memoria se basa en dos conceptos:

  • El dispositivo traductor divide las direcciones lógicas en 2 partes de la siguiente forma: los n bits más significativos identifican la página mientras que el resto identifica el desplazamiento.
  • Cuando el traductor dinámico de páginas recibe, en una dirección lógica, un número de página este examina una tabla (llamada tabla de páginas) en la cual se relacionan las páginas lógicas con las páginas físicas y obtiene la dirección real (Número de marco) de la siguiente forma:
paginacion

Dispositivo de traducción de direcciones paginadas


Se dispone de la tabla de páginas de cada proceso en memoria para llevar a cabo la traducción. La tabla de páginas se indexa por número de página.
El dispositivo de traducción de direcciones paginadas debe ser un dispositivo muy rápido, ya que se usa con cada acceso a memoria que se realiza. El tamaño de la tabla de páginas es uno de los aspectos que más influye en el diseño del dispositivo e incluso en la organización de la propia tabla. Otro aspecto relevante es la localización de dicha tabla, la cual puede encontrarse en el traductor o guardada en memoria:

Tabla de páginas en el traductor:

Se usa en equipos cuyo espacio de direcciones es de pocas páginas. El dispositivo de traducción contiene un conjunto de registros organizados como una memoria en los cuales almacena la tabla de páginas. Dicha tabla de páginas debe sustituirse (lo cual aumenta el tiempo de conmutación) en dos situaciones distintas: al cambiar de proceso y al transferir el control al s.o. (en este caso se reduce el tiempo de conmutación utilizando dos tablas separadas, una para los procesos y otra para el s.o., las cuales se utilizan dependiendo del modo de uso de la CPU, supervisor o usuario).

Tabla de páginas en memoria:

Se usa en equipos con mucha memoria, en los cuales el número de páginas puede llegar a ser muy alto con lo que el tiempo necesario para cargar las páginas en el traductor es demasiado alto. La tabla de páginas es guardada en la memoria principal y el dispositivo traductor tiene la dirección de comienzo y el tamaño de la tabla, debido a que la tabla está en la memoria principal se necesita, por cada acceso a memoria, un acceso a memoria adicional para obtener el número de página física asociado a la página lógica. Para mantener un tiempo de acceso aceptable se establece una memoria asociativa que conserva las parejas página lógica-página física utilizadas recientemente.
También hay dispositivos traductores que no utilizan tablas de páginas, buscan directamente la información en una memoria asociativa, y si no la encuentran, lanzan una excepción que manejará el sistema operativo. Así, el SO es el responsable de determinar la asociación entre números de página y números de marco, y además de actualizar la memoria asociativa, lo que da cierta flexibilidad.
La evaluación se hace en base a la tasa de fallos de página, que es el número de fallos de página entre el número de accesos totales a página, con lo que su valor oscila en el rango [0,1].
El fallo de página se produce cuando se accede a una posición de memoria que pertenece a una página de memoria que esta descargada en disco.

También hay que tener en cuenta el contexto, si estamos en arranque en frío o en caliente, así como el cumplimiento del principio de localidad espacial y temporal.

  • Arranque en frío: se dan muchos fallos de página al principio, ya que los procesos se acaban de lanzar y ninguno está cargado en memoria principal.
  • Arranque en caliente: se suponen ya cargadas las páginas de los procesos en memoria principal.

Algoritmo MRU(Most Recently Used)

Se selecciona la última página a la que se ha accedido. Podría implementarse con una LIFO por orden de acceso. Es una aproximación implementable en la práctica del criterio MAX, pudiendo así compararlo con otros criterios. Según el principio de localidad, mientras más recientemente se haya accedido a una página, más probable es que vuelva a accederse a ella. Por ello, este criterio es muy deficiente, siendo su curva cercana a la pésima:

MRU

Algoritmo por orden de carga FIFO

Se selecciona la página que más tiempo lleva cargada en memoria principal. Se implementa con una FIFO por orden de carga, es decir, a medida que se cargan en memoria principal las páginas son añadidas a la cola.
El inconveniente de este criterio es que las páginas más usadas son las que más tiempo deberían permanecer en memoria, y son las más atacadas. No se debe suponer que, si las páginas “dejarán de ser necesarias”, implica que “ya no sean necesarias”. Además, se produce la anomalía de Belady, efecto que consiste en la posibilidad de tener más fallos de página al aumentar el número de marcos en la memoria física:

FIFO



El espacio virtual se divide en paginas. Algunas paginas estan en memoria principal
  • El SO se encarga de que esten en memoria principal las paginas necesarias.
  • Para ello trata los fallos de pagina producidos por la MMU.
Las direcciones generadas por la cpu se dividen en :

  • numero de paginas (p): Utilizado en las tabla de paginas que contiene las direcciones base de cada pagina en la memoria física.
  • el desplazamiento de pagina (d) : Combinado con la dirección base definen la dirección de memoria física que es enviada a la unidad de memoria.
  • Traducción: proceso referencia (p,d): Se busca en la tabla de correspondencia de paginas para ver la p´(p real), la dirección real es p´+d. Por agilidad tabla de correspondencia cache.
  • Si no hay residencia de la pagina en memoria principal, sucede una falta de pagina. r=0 si pagina no esta en real, 1 si esta.


Elemento de la tabla de paginas

  • otras informaciones
  • copia en escritura
  • edad
  • no pagina (fija en memoria física)
  • rellenar a ceros
division de memoria


  • Esquema de administración de memoria que soporta la visión del usuario de la memoria.
  • Un programa es una colección de segmentos. Un segmento es una unidad lógica como por ejemplo:
  • Programa principal
  • Procedimientos
  • Funciones
  • Variables locales, variables globales
  • Bloques comunes
  • Pila
  • Tabla de símbolos, arreglos.


Esquema de traducción usando segmentación

segmentacion


Tabla De Correspondencia De Segmentos
Dirección virtual = (s,d), los segmentos se intercambia como unidades.
Programas: núcleo principal, rutinas, datos (tablas, pilas, etc)
r = 0 si segmento no está en real, 1 si esta
Bits de protección: 1 – si 0 – no
R-acceso lectura, W – escritura, E – ejecución, A – adición

Segmentación Con Paginación

  • La segmentación con paginación intenta aunar lo mejor de los dos esquemas anteriores.
  • La segmentación proporciona soporte directo a las regiones del proceso y la paginación permite un mejor aprovechamiento de la
  • memoria y una base para construir un esquema de memoria virtual.
  • Un segmento está formado por un conjunto de páginas, y por tanto , no tiene que estar contiguo en memoria.
  • La MMU utiliza una tabla de segmentos, tal que cada entrada de la tabla apunta a una tabla de páginas.
  • Requiere un hardware más complejo.
  • El sistema Multics resolvió la fragmentación externa y los largos tiempos de búsqueda paginando los segmentos.
  • Esta solicitud difiere de la segmentación pura en que la entrada

Particiones  Fijas

onsiste en dividir la memoria libre en varias partes de igual tamaño o de diferentes tamaños Un programa puede ser demasiado grande para caber en la partición. En este caso, el programador debe diseñar el programa mediante superposiciones, para que sólo una parte del programa esté en memoria principal.

En el caso de particiones de igual tamaño, si todas las particiones estuvieran ocupadas con procesos que no están listos para ejecutar y necesita cargarse un nuevo proceso, debe determinarse qué partición expulsarse de memoria

Asignación de memoria con particiones fijas: consiste en el proceso de asignar memoria en tiempo de compilación antes de que el programa asociado sea ejecutado

Particiones Dinámicas

Consiste en particiones de memoria de tamaños variable, es decir, a cada proceso se le asigna la cantidad de memoria que necesita deben utilizarse algunos algoritmos para la ubicación de procesos en las particiones. Estos algoritmos son:

Mejor ajuste: se elige el bloque con el tamaño más parecido al del proceso entrante.

Primer ajuste: comienza recorriendo la memoria desde el comienzo y escoge el primer bloque disponible en el que entre el proceso entrante

Siguiente ajuste: recorre la memoria desde el lugar de la última ubicación y elige el siguiente bloque disponible que sea suficientemente grande.

Peor ajuste: elige el bloque más grande posible. (descartado por ineficiencia)


La multiprogramación es una técnica de multiplexación que permite la ejecución simultánea de múltiples procesos en un único procesador. En realidad, esta técnica produce una ilusión de paralelismo, de manera que parece que todos los procesos se están ejecutando a la vez. Sin embargo, hay un único proceso ejecutándose en el procesador a la vez.

Un método para la multiprogramación es el Foreground/Background (o ejecución jerarquizada) (usado en sistemas por tandas, nunca en interactivos), en él hay un proceso prioritario (el foreground (FG)) que se ejecuta con preferencia de todos los demás, cuando este proceso solicita una operación L/E(Lectura/Escritura), mientras el s.o. la realiza, el proceso FG estará bloqueado por esta operación y le cede el control al proceso background 1 (BG), y si éste realiza una operación L/E, al BG2,… Cuando uno de los procesos bloqueados se desbloquea, recibe el control del procesador. Para que este método funcione de forma óptima la mejor forma es colocar los procesos ordenados de mayor a menor cantidad de operaciones L/E.
Multiprogramacion
Uso del procesador con 3 procesos

Es un modelo de referencia para los protocolos de red la arquitectura en capas, creado en el año 1980 por la Organización Internacional de Normalización (ISO, International Organization for Standardization). Se ha publicado desde 1983 por la Unión Internacional de Telecomunicaciones (UIT) y, desde 1984, la Organización Internacional de Normalización (ISO) también lo publicó con estándar. Su desarrollo comenzó en 1977.

El modelo de interconexión de sistemas abiertos (OSI) tiene siete capas. Empezando por la más baja en la jerarquía (la física) y siguiendo hacia la más alta (la aplicación). Las capas se apilan de esta forma:

  • Aplicación
  • Presentación
  • Sesión
  • Transporte
  • Red
  • Vínculo de datos
  • Física

Capa Física

La capa física, la más baja del modelo OSI, se encarga de la transmisión y recepción de una secuencia no estructurada de bits sin procesar a través de un medio físico. Describe las interfaces eléctrica/óptica, mecánica y funcional al medio físico, y lleva las señales hacia el resto de capas superiores. Proporciona:
  • Codificación de datos
  • Anexo al medio físico, con capacidad para varias posibilidades en el medio
  • Técnica de la transmisión
  • Transmisión de medio físico

Capa De Vínculo De Datos

La capa de vínculo de datos ofrece una transferencia sin errores de tramas de datos desde un nodo a otro a través de la capa física, permitiendo a las capas por encima asumir virtualmente la transmisión sin errores a través del vínculo. Para ello, la capa de vínculo de datos proporciona:
  • Establecimiento y finalización de vínculos 
  • Secuenciación de tramas 
  • Confirmación de trama 
  • Delimitación de trama 
  • Comprobación de errores de trama 
  • Administración de acceso al medio

Capa De Red

La capa de red controla el funcionamiento de la subred, decidiendo qué ruta de acceso física deberían tomar los datos en función de las condiciones de la red, la prioridad de servicio y otros factores. Proporciona:
  • Enrutamiento 
  • Fragmentación de trama 
  • Asignación de direcciones lógico-físicas 
  • Cuentas de uso de subred 

Capa De Transporte

La capa de transporte garantiza que los mensajes se entregan sin errores, en secuencia y sin pérdidas o duplicaciones. Libera a los protocolos de capas superiores de cualquier cuestión relacionada con la transferencia de datos entre ellos y sus pares.

El tamaño y la complejidad de un protocolo de transporte depende del tipo de servicio que pueda obtener de la capa de transporte. Para tener una capa de transporte confiable con una capacidad de circuito virtual, se requiere una mínima capa de transporte. Si la capa de red no es confiable o solo admite datagramas, el protocolo de transporte debería incluir detección y recuperación de errores extensivos.

La capa de transporte proporciona:
  • Segmentación de mensajes 
  • Confirmación de mensaje 
  • Control del tráfico de mensajes 
  • Multiplexación de sesión 

Capa De Sessión

La capa de sesión permite el establecimiento de sesiones entre procesos que se ejecutan en diferentes estaciones. Proporciona:
  • Establecimiento, mantenimiento y finalización de sesiones 
  • Soporte de sesión 

Capa De Presentación

La capa de presentación da formato a los datos que deberán presentarse en la capa de aplicación. Se puede decir que es el traductor de la red. Esta capa puede traducir datos de un formato utilizado por la capa de la aplicación a un formato común en la estación emisora y, a continuación, traducir el formato común a un formato conocido por la capa de la aplicación en la estación receptora.

La capa de presentación proporciona:
  • Conversión de código de caracteres 
  • Conversión de datos 
  • Compresión de datos 
  • Cifrado de datos 

Capa De Aplicación

El nivel de aplicación actúa como ventana para los usuarios y los procesos de aplicaciones para tener acceso a servicios de red. Esta capa contiene varias funciones que se utilizan con frecuencia:
  • Uso compartido de recursos y redirección de dispositivos 
  • Acceso a archivos remotos 
  • Acceso a la impresora remota 
  • Comunicación entre procesos 
  • Administración de la red 
  • Servicios de directorio 
  • Mensajería electrónica 
  • Terminales virtuales de red


Pv6 es el protocolo de Internet de última generación que se ha diseñado para sustituir al protocolo de Internet actual: la Versión 4 del Protocolo de Internet.
Para poder comunicarse a través de Internet, los ordenadores y otros dispositivos deben tener direcciones de emisor y receptor. A estas direcciones numéricas se las conoce como direcciones del Protocolo de Internet. A medida que Internet y el número de personas que lo utilizan crecen exponencialmente, crece también la necesidad de contar con direcciones IP.
IPv6 es un estándar que ha desarrollado el Grupo de Trabajo de Ingeniería de Internet (IETF, por sus siglas en inglés), una organización que desarrolla tecnologías de Internet. El IETF, anticipándose a la necesidad de contar con un mayor número de direcciones IP, ha creado el protocolo IPv6 para dar cabida al creciente número de usuarios y dispositivos que acceden a Internet.

IPv6 permite que un mayor número de usuarios y dispositivos se comuniquen a través de Internet utilizando números de mayor tamaño para crear direcciones IP. En el protocolo IPv4, cada dirección IP se compone de 32 bits, lo que permite la existencia de 4300 millones de direcciones únicas

¿Como esta Colombia en el cambio del IPV6?

El despliegue de IPv6 se irá realizando gradualmente, en una coexistencia ordenada con IPv4, al que se irá desplazando a medida que dispositivos electrónicos con conexión a Internet, equipos de red, aplicaciones, contenidos y servicios se vayan adaptando a la nueva versión del protocolo de Internet.

Por ello, es importante que entendamos cómo se realiza el despliegue del nuevo protocolo de Internet, tanto si somos usuarios residenciales, como corporativos, proveedores de contenidos, proveedores de servicios de Internet, así como la propia administración pública. para mas informacion dirijace al pan de migración para Colombia del IPV6 MinTIC
Debug

El Debug es una utilidad de MS-DOS que permite visualizar memoria, introducir programas en ella y rastrear su ejecución. Una característica de debug es que despliega todo el código del programa en formato hexadecimal.
Es importante saber que muchos usos de este tipo de utilidades de bajo nivel, requieren un funcionamiento stand-alone, es decir, fuera de un Sistema Operativo multi-usuario, ya que éstos encapsulan y ocultan muchos aspectos del hardware.
Debug es Útil para:


  • Ensamblar pocas líneas de código
  • Des-ensamblar código en RAM, ROM y ejecutables
  • Correr paso-a-paso programas
  • Desplegar datos en memoria
  • Verificar estado de los registros del CPU

Comandos


D: DUMP

Muestra el contenido de una zona de memoria en hexadecimal y en ASCII. Sin parámetros muestra los primeros 128 bytes a partir de la posición a la que se llegó en el último "d". Si se le da un rango, mostrará ese rango.

E DIRECCION: EDIT

Permite editar, byte por byte, una zona de memoria. Muestra -en hexadecimal- el byte de esa posición y permite escribir otro valor para cambiarlo. Pulsando espacio pasa al byte siguiente, dejando como estaba el anterior si no se ha cambiado, o guardando los cambios si sí se ha hecho. Para terminar la edición se pulsa INTRO.

R: REGISTERS

Sin parámetros, muestra el contenido de los registros de la CPU, así como la próxima instrucción a ejecutar."R [REGISTRO]" muestra el contenido del registro especificado y cambia el prompt de "-" a ":" invitando a que se cambie su valor. Pulsando Enter sin más lo deja como estaba.

A: ASSEMBLE

Sin parámetros ensambla las instrucciones que se introduzcan, guardándolas en la dirección siguiente a la que se llegó en el último "a". Cuando se utiliza este comando se le puede dar como parámetro la dirección donde se desea que se inicie el ensamblado, si se omite el parámetro el ensamblado se iniciará en la localización especificada por CS:IP, usualmente 0100H, que es la localización donde deben iniciar los programas con extensión .COM, y será la localización que utilizaremos debido a que debug solo puede crear este tipo específico de programas.

F: FILL

Llena una zona de memoria con un valor determinado. Como al terminar un programa la zona de memoria en que se residía no se borra (poniéndola a cero, por ejemplo), a menudo es útil para distinguir entre lo que son datos del programa actual y lo que es basura del anterior.

Q: QUIT

Salir de debug y volver al DOS.

P: STEP

P [=dirección] [número]
Trace puede ser incómodo si no se quiere depurar el código de las rutinas de interrupción o si ya se sabe el código que hay en las subrutinas y tan sólo interesa seguir avanzando sin entrar en ellas. En estos casos se usa p.


RAM
Memoria RAM


En un computador o dispositivo electrónico se puede encontrar una gran variedad se memorias la cuales cumplen funciones específicas dentro del sistema  cada una de estas puede almacenar datos de forma distinta y mostrarlos al usuario dependiendo la necesidad de cada una de las operaciones.

RAM (Random Access Memory) 


Puede leer o escribir en una posición de memoria con un tiempo de espera igual para cualquier posición, no siendo necesario seguir un orden para acceder a la información de la manera más rápida posible, en esta se almacenan y ejecutan cada una de las operaciones que requiera el sistema operativo o programa que se corra y requiera procesar algún dato o realizar una operación con los mismo. Esta memoria es volátil y no guarda datos luego de que se corta la energía.

ROM (Read-Only Memory)


Es un medio de almacenamiento utilizado en ordenadores y dispositivos electrónicos, que permite solo la lectura de la información y no su escritura, independientemente de la presencia o no de una fuente de energía.
Los datos almacenados en la ROM no se pueden modificar, o al menos no de manera rápida o fácil. Se utiliza principalmente en su sentido más estricto.
Como la ROM no puede ser modificada (al menos en la antigua versión de máscara), solo resulta apropiada para almacenar datos que no necesiten ser modificados durante la vida de este dispositivo. Con este fin, la ROM se ha utilizado en muchos ordenadores para guardar tablas de consulta, utilizadas para la evaluación de funciones matemáticas y lógicas

EPROM (Erasable Programmable Read-Only Memory)


Es un tipo de chip de memoria ROM no volátil Está formada por celdas transistores de puerta flotante cada uno de los cuales viene de fábrica sin carga, por lo que son leídos como 1 (por eso, una EPROM sin grabar se lee como FF en todas sus celdas
Una EPROM programada retiene sus datos durante diez o veinte años, y se puede leer un número ilimitado de veces. Para evitar el borrado accidental por la luz del sol, la ventana de borrado debe permanecer cubierta. Las antiguas BIOS de los ordenadores personales eran frecuentemente EPROM y la ventana de borrado estaba habitualmente cubierta por una etiqueta que contenía el nombre del productor de la BIOS.

EEPROM (Electrically Erasable Programmable Read-Only Memory)


Es un tipo de memoria ROM que puede ser programada, borrada y reprogramada eléctricamente, a diferencia de la EPROM que ha de borrarse mediante un aparato que emite rayos ultravioleta. Son memorias no volátiles.
Las celdas de memoria de una EEPROM están constituidas por un transistor MOS, que tiene una compuerta flotante (estructura SAMOS), su estado normal está cortado y la salida proporciona un 1 lógico.
Aunque una EEPROM puede ser leída un número ilimitado de veces, sólo puede ser borrada y reprogramada entre 100.000 y un millón de veces.


Asignación de memoria


La asignación de memoria en un SO es la forma en la que se distribuye el espacio en RAM de cada uno de los proceso esto se puede realizar con una serie de técnicas o netos que se describirán a continuación.

Primer ajuste


Consiste en asignar el primer segmento disponible que tenga un espacio suficiente para almacenar el programa. Esto causa que se dé un alto índice de fragmentación dado que si la primer partición e la de mayor espacio en esta pueden corres pequeños procesos que no siempre o chupan toda la capacidad del segmento.


Mejor ajuste 


Consiste en recorrer todos los segmentos de memoria y verificar cual es el que menor fragmentación cause de acuerdo con el proceso a ejecutar si hay un segmento de memoria que tiene exactamente el mismos tamaño del proceso este se asignara en este espacio y no continuara buscando otro segmento.

Siguiente ajuste


Consiste en realizar la asignación de los proceso de la misma forma que se hace en el mejor ajuste a excepción de que en este caso el recorrido de los segmentos de memoria se inicia desde la última posición en la que se asignó un proceso

este evento se produjo dado que los informáticos de la época usaron un a programacion basada en los 2 últimos dígitos de la fecha, esto para ahorrar espacio en memoria al no almacenaban los 2 primeros dígitos , al mediados de los años 80 se inicio con la teoría de que en el cambio de milenio los programas escritos con esta característica presentarían fallos y toda la red tecnológica se vería afectada.

la estimaciones en perdidas por parte de los expertos incendian a mas de 300 millones de dolares lo que causo que los informáticos se plantearan o revisaran cada uno de los programas para detectar y corregir este fallo, un ejemplo común es el de la fuerza aérea estadounidense la cual exijo a sus proveedores informáticos que garantizaran que el cambio de milenio no afectara los aviones y estos podrían volar el 01/01/2000 sin problemas , para algunos de estos proveedores el tiempo de solución del inconveniente fue mas de 3 años.

Solución Final

los sistemas operativos implementaron un cambio en el calculo de la fecha de la siguiente forma se asigno una fecha inicial 01/01/1900 a el numero 1, por lo que para calcular la fecha se cuenta el numero de días que han pasado desde este fecha ej. la fecha de este post seria 42242 de acuerdo con lo anterior los programadores ajustaron sus programas por medio de parches en el SO o incluso sobre los mismos programas.

En Colombia el periódico EL TIEMPO publico un articulo donde informa que  algunos ingenieros colombianos planteaban una solución al inconveniente.


primero que todo este nuevo SO de Microsoft viene con varios fallos que se deben ir corrigiendo con el tiempo por lo que aun no es un SO maduro como en su momento lo llego a ser la versión XP,7 o incluso 8.

por esta razón deja mucho que pensar del compromiso de Microsoft con esta nueva versión, desde luego el mismo SO cuenta con la opción de valorar el sistema en varios puntos.

Diseño 

es quizás la mejor parte de este SO la intefaz metro se encuentra funcionada en el escritorio y los iconos tiene un estilo design el cual nos recuerda los atractivos iconos simples que se trata de imponer por estos días en los dispositivos móviles


Lo nuevo

como novedades este SO incorpora nuevas aplicaciones muy funcionales y una barra de tareas mucho mas avanzada y simple la cual permite entre otras funciones.

  • manejo de escritorios virtuales
  • recuperación de notificaciones anteriores 
  • configuración de redes y accesibilidad rápidas

el mejor cambio de esta nueva versión?

sin duda el mejor cambio de esta nueva versión es la implementacion de un nuevo navegador que remplaza las horribles características de IE se trata de Microsoft Edge el cual al parecer interpreta las etiquetas HTML que su antecesor no podía interpretar y en ocasiones enloquecía a mas de un diseñador WEB

Como te a parecido este SO?

cuéntanos tus opiniones de esta nueva actualización, que deben mejorar y que fue lo que mas te gusto. 


Características técnicas

El reloj inteligente de Sony se sitúa en la línea de otros modelos de esta temporada en muchas de sus especificaciones, pero hay variaciones y mejoras muy interesantes, además de algún punto en contra igualmente destacable.

Bootstrap es un framework creado por Twitter que incluye varias herramientas de software libre para el diseño y desarrollo web.
Principalmente, Bootstrap se creó en Twitter para fomentar la consistencia de sus trabajos a través de herramientas internas, pero en agosto del 2011, Twitter decidió liberar este framework como código abierto.
Este framework actualmente es el proyecto más popular en GitHub, y se ha llegado a utilizar por organizaciones como la NASA y la MSNBC.

¿Por que  Bootstrap?

Al ser un framework desarrollado con LESS/SASS/CSS3 y JavaScript, por lo que ya trae elementos predefinidos en cuanto a estilos y funcionalidades, por ejemplo, tablas, formularios, botones, tipografías, menús y un largo etc. que podemos encontrar con sus respectivos códigos en su web.
Al tener tantos elementos ya predefinidos e incluidos, nos ahorramos el tener que recurrir a otros plugins o frameworks externos y sobrecargar nuestra web de archivos.

¿Que es el sistema de Grillas?

Sin duda una de las características más importantes y útiles para desarrollar webs adaptadas a todos los dispositivos (Responsive Web Design), ya que trae un sistema de cuadrilla o de rejillas donde se pueden adaptar todos los elementos al ancho de 12 columnas que varían su tamaño dependiendo del dispositivo donde se visualice la web.
Lo único que se tiene que hacer para conseguir esto, es poner una serie de clases CSS en nuestros elementos HTML que ya vienen predefinidas en las hojas de estilos que nos descargamos, donde se define que ancho va a tener el elemento dependiendo el dispositivo. En la web de Bootstrap podemos encontrar una tabla con las medidas estándar que nos da esteframework:
Sistema de grillas Boostrap

Sistema de Grilla Bosstrap


En resumen con este sistema ahorraras tiempo y por lo tanto dinero a la hora de desarrollar webs y las desarrollarás con una mayor calidad y compatibilidad con dispositivos y más navegadores.
Debug and Relelease
Modo Debug and Release

Un proyecto de Visual Studio tiene configuraciones diferentes para las versiones de lanzamiento y depuración del programa. Como se desprende de los nombres, la versión de depuración se genera para la depuración y la versión de lanzamiento para la distribución final de lanzamiento.

Si crea el programa en Visual Studio, Visual Studio crea automáticamente estas configuraciones y establece las opciones predeterminadas apropiadas y otros valores. Con la configuración predeterminada:

  • La versión de depuración del programa se compila sin optimizar y con toda la información de depuración simbólica. (La optimización complica la depuración, ya que la relación entre el código fuente y las instrucciones generadas es más compleja.)
  • La configuración Release del programa es totalmente optimizada y no contiene información de depuración simbólica. La información de depuración se puede generar en archivos PDB distintos.
Para cambiar entre las versiones de lanzamiento y depuración puede utilizar la barra de herramientas Estándar.

Para cambiar a la configuración Debug (o Release)

  • En la barra de herramientas Estándar, elija Debug (o Release) en el cuadro de lista Configuraciones de soluciones.

Puede cambiar los valores de una configuración mediante el cuadro de diálogo Páginas de propiedades de <Proyecto>.

Para cambiar los valores de la configuración de Debug (o Release)

  1. En el Explorador de soluciones, seleccione el proyecto.
  2. En el menú Ver, haga clic en Páginas de propiedades.
  3. En el cuadro de diálogo Páginas de propiedades de <Proyecto>, en el cuadro de lista Configuración, elija Debug (o Release).
  4. Abra la carpeta Propiedades de configuración y busque los valores que desee cambiar.
  5. Edite los valores en la cuadrícula de propiedades.