Programación Visual de Sistemas

26
Programación Visual de Sistemas Objeti vo El alumno adquirirá el conocimiento necesario sobre herramientas visuales de programación que le permitan desarrollar y comprender procesos visuales

description

Programación Visual de Sistemas. Objetivo. El alumno adquirirá el conocimiento necesario sobre herramientas visuales de programación que le permitan desarrollar y comprender procesos visuales. Máquinas virtuales. Componentes más importantes de un sistema informático. CPU. Memoria Principal. - PowerPoint PPT Presentation

Transcript of Programación Visual de Sistemas

Page 1: Programación  Visual de Sistemas

Programación Visual de Sistemas

Objetivo El alumno adquirirá el conocimiento necesario sobre herramientas visuales de programación que le permitan desarrollar y

comprender procesos visuales

Page 2: Programación  Visual de Sistemas

Máquinas virtualesComponentes más importantes de un sistema informático

CPU

Buses del sistema (Transferencia de datos, Direcciones, comandos de control)

Memoria Principal

Conexión a la red

Disco duroTecladoPantalla

de video

Dispositivos de entrada y salida

Page 3: Programación  Visual de Sistemas

Máquinas virtualesRepresentación simple del software en relación con el hardware

Shell(interprete

de comandos)

Utilidades

Otros programas

(buscadores, juegos,

procesadores de palabras)

Núcleo del sistema operativo

CPUMemoriaDispositivos

(discos, teclados)

Page 4: Programación  Visual de Sistemas

Máquinas virtuales

Llamadas al sistemaLos programas de aplicación normalmente necesitan usar datos y servicios gestionados.

Las aplicaciones también pueden necesitar comunicarse entre sí, y el SO debe actuar como intermediario

Cualquier aplicación normal requiere tales habilidades, y la forma en que solicita servicios al SO es usando una llamada al sistema

Primero, la aplicación carga ciertos registro con

información que describe el servicio requerido y

luego ejecuta una instrucción de llamada al

sistema

Page 5: Programación  Visual de Sistemas

Máquinas virtuales

Llamadas al sistema

En lugar de llamar directamente a una sección del código que efectúe la función, la instrucción de la llamada al sistema en general origina una interrupción que manipula el SO.

El SO realiza el servicio solicitado y luego devuelve el control a la aplicación

Page 6: Programación  Visual de Sistemas

Máquinas virtuales

Llamadas al sistema

Por lo general los sistemas de desarrollo de aplicaciones cuentan con una biblioteca que se carga como parte de los programas de aplicación. Esta biblioteca manipula los detalles de pasar información al núcleo y ejecutar las instrucciones de llamada al sistema.

El echo de que esta función la proporcione la biblioteca reduce la intensidad de la conexión entre el sistema operativo y la aplicación, lo que la hace más portátil.

Page 7: Programación  Visual de Sistemas

Máquinas virtualesColas y Tablas

Un sistema operativo gestiona muchas estructuras de datos para llevar a cabo sus tareas, las más comunes son las colas y las tablas.

Las tablas se usan para almacenar información sobre varios objetos que gestiona el sistema

operativo

Las tablas se usan para almacenar información sobre varios objetos que gestiona el sistema

operativo

Por ejemplo el BCPBloque de Control de Procesos

Para seguir la pista de la información asociada al proceso

Por ejemplo el BCPBloque de Control de Procesos

Para seguir la pista de la información asociada al proceso

Page 8: Programación  Visual de Sistemas

Máquinas virtualesColas y Tablas

Tabla de PáginasTabla de Páginas

Se usa para seguir la pista del espacio de direcciones de un procesos cuando el hardware

admite memoria en páginas

Se usa para seguir la pista del espacio de direcciones de un procesos cuando el hardware

admite memoria en páginas

Page 9: Programación  Visual de Sistemas

Máquinas virtualesColas y Tablas

Tabla de Archivos AbiertosTabla de Archivos Abiertos

Mantiene un elemento por cada archivo abierto en e sistema

Mantiene un elemento por cada archivo abierto en e sistema

Page 10: Programación  Visual de Sistemas

Máquinas virtualesColas y Tablas

El SO también mantiene varias colas para seguir la pista de información que está ordenada de alguna forma.

Cola de planificación de discoCola de planificación de disco

Cola de impresiónCola de impresión

Cola de procesos listosCola de procesos listos

Page 11: Programación  Visual de Sistemas

Máquinas virtualesEnfoque orientado a objetos

En este enfoque, cada modulo del SO debe diseñarse como una colección de objetosobjetos y cada objeto incluye métodos que se proporcionan como servicio a

otras partes del SO o a programas de aplicación.

El hecho de construir el SO con objetos ofrece diversas ventajas de la ingeniería de software orientada a objetos, como el encapsulamiento de

estructuras de datos objeto, separando una interfaz de su implementación, extensibilidad y facilidad de reuso de objetos, entre muchas otras ventajas

Page 12: Programación  Visual de Sistemas

Máquinas virtualesEnfoque orientado a objetos

La característica clave de un objeto es que su estructura interna oculta, y cualquier acceso a los datos que contiene un objeto es a través de los

métodos del objeto.

Esto hace menos probable que una aplicación pueda usar indebidamente u objeto y provocar así problemas para otros módulos.

Page 13: Programación  Visual de Sistemas

Máquinas virtuales

Otro enfoque al diseño de un SO es la técnica de usar un emulador de software para abstraer o virtualizar un sistema total (Dispositivos, CPU y memoria).

Este concepto se denomina máquina virtual (MV). La máquinas virtuales permiten que los distintos entornos de emulación se protejan entre si de modo que la caída en un programa no hace caer a los demás

Page 14: Programación  Visual de Sistemas

Máquinas virtuales dehardware

Un programa o un subsistema de núcleo proporciona una emulación de software de una máquina de hardware real.

Hay dos clases distintas de tal emulación, una en la cual el sistema de hardware huésped está siendo emulado y otra donde otra CPU está siendo emulada.

La segunda clase fue desarrollada tradicionalmente por un fabricante a fin de asistir a la migración de clientes de un sistema antiguo a otro más nuevo

Un programa o un subsistema de núcleo proporciona una emulación de software de una máquina de hardware real.

Hay dos clases distintas de tal emulación, una en la cual el sistema de hardware huésped está siendo emulado y otra donde otra CPU está siendo emulada.

La segunda clase fue desarrollada tradicionalmente por un fabricante a fin de asistir a la migración de clientes de un sistema antiguo a otro más nuevo

Page 15: Programación  Visual de Sistemas

Máquinas virtuales dehardware

La emulación de la máquina huésped a menudo se usaba para permitir la ejecución simultanea de múltiples núcleos de sistema operativo.La emulación de la máquina huésped a menudo se usaba para permitir la ejecución simultanea de múltiples núcleos de sistema operativo.

Shell, unidades o programas

Shell, unidades o programas

Shell, unidades o programas

Núcleo 1 Núcleo 3Núcleo 2

Dispositivos(discos teclados) MemoriaCPU

Máquina virtual

Page 16: Programación  Visual de Sistemas

Máquinas virtuales deaplicación

Algunas veces la máquina que se esta emulando no es un CPU real, sino una especificación de máquina idealizada, diseñada para manejar ya sea un lenguaje especifico o una amplia variedad de lenguajes

Algunas veces la máquina que se esta emulando no es un CPU real, sino una especificación de máquina idealizada, diseñada para manejar ya sea un lenguaje especifico o una amplia variedad de lenguajes

Una maquina que actualmente es muy popular es la máquina virtual java (MVJ) que crea una máquina abstracta que ejecuta programas en Java.

Una maquina que actualmente es muy popular es la máquina virtual java (MVJ) que crea una máquina abstracta que ejecuta programas en Java.

Page 17: Programación  Visual de Sistemas

Máquinas virtuales deaplicación

En otros casos, la MV de emulación puede ser interna en otro programa como un buscador de red, en tales casos los programas en Java están restringidos en cuanto a lo que se les permite hacer.

En otros casos, la MV de emulación puede ser interna en otro programa como un buscador de red, en tales casos los programas en Java están restringidos en cuanto a lo que se les permite hacer.

Otro paquete como éstos es el Lenguaje común en tiempo de ejecución(CLR), creado por Microsoft para manejar su arquitectura .net. En este caso la máquina abstracta fue diseñada para admitir una amplia variedad de lenguajes, en lugar de uno solo.

Otro paquete como éstos es el Lenguaje común en tiempo de ejecución(CLR), creado por Microsoft para manejar su arquitectura .net. En este caso la máquina abstracta fue diseñada para admitir una amplia variedad de lenguajes, en lugar de uno solo.

Page 18: Programación  Visual de Sistemas

¿Cuáles son los componentes del .NET Framework?

Los componentes del .NET Framework

Common Language Runtime - CLR

Biblioteca de clases del .NET Framework

ADO.NET: Datos y XML

ASP.NET: Formularios Web y Servicios Web

Interfaz de usuario

Page 19: Programación  Visual de Sistemas

Componentes del .NET Framework

Biblioteca de clases del .NET FrameworkBiblioteca de clases del .NET Framework

ADO.NET: Datos y XMLADO.NET: Datos y XML

InterfazInterfazde usuariode usuario

Common Language RuntimeCommon Language Runtime

ASP .NETASP .NETFormularios Formularios

y Servicios Web y Servicios Web

Page 20: Programación  Visual de Sistemas

Common Language RuntimeSoporte de la biblioteca de clases baseSoporte de la biblioteca de clases base

Soporte de hilosSoporte de hilos COM marshalerCOM marshaler

Verificador de tiposVerificador de tipos Gestor de excepcionesGestor de excepciones

MSIL a MSIL a compiladorescompiladores

nativosnativos

GestorGestorde códigode código

RecolectorRecolectorde basurade basura

Motor de seguridadMotor de seguridad Motor de depuraciónMotor de depuración

Cargador de clasesCargador de clases

Page 21: Programación  Visual de Sistemas

Biblioteca de clases .NET Framework

System.GlobalizationSystem.Globalization

System.DiagnosticsSystem.Diagnostics

System.ConfigurationSystem.Configuration

System.CollectionsSystem.CollectionsSystem.IOSystem.IO

System.ReflectionSystem.Reflection

System.NetSystem.Net

SystemSystem

System.ThreadingSystem.Threading

System.TextSystem.Text

System.SecuritySystem.Security System.Runtime.System.Runtime.InteropServicesInteropServices

Page 22: Programación  Visual de Sistemas

ADO.NET: Datos y XML

DataSetDataSet DataRowDataRow

DataTableDataTable DataViewDataView

System.DataSystem.Data System.XmlSystem.Xml

System.Xml.SchemaSystem.Xml.Schema

System.Xml.SerializationSystem.Xml.Serialization

Page 23: Programación  Visual de Sistemas

ASP.NET: Formularios Web y Servicios Web

ASP.NETASP.NETSystem.WebSystem.Web

ConfiguraciónConfiguración Estado de SesiónEstado de Sesión

CachéCaché SeguridadSeguridad

ServiciosServicios

DescripciónDescripción

DescubrimientoDescubrimiento

ProtocolosProtocolos

IUIU

HtmlControlsHtmlControls

WebControlsWebControls

Page 24: Programación  Visual de Sistemas

Interfaz de usuario

System.DrawingSystem.Drawing

System.Windows.FormsSystem.Windows.Forms

Page 25: Programación  Visual de Sistemas

¿Cuáles son las mejoras de Visual Basic .NET?

Principales mejoras del lenguaje

Soporte mejorado orientado a objetos Gestión de excepciones estructurada

Acceso total al .NET Framework

Nuevas opciones de manejo de hilos Recolector de basura

Desarrollo Web mejorado

Creación de Formularios Web tan fácilmente como formularios Windows

Crear servicios Web rápidamente

Page 26: Programación  Visual de Sistemas

Descripción de los espacios de nombres

Espacios de nombres

Espacios de nombres utilizados en módulos obligatorios

Espacios de nombres utilizados en módulos opcionales