Visita la versión flash
Propuestas
Visita el perfil del autor
Hablan del blog

SOM30


"Cómo hacer un Sistema Operativo en 30 días"
17/07/2010 23:30

Programación de alto nivel (SAM)

Comunicaciones de Red
El último de los módulos principales del Sistema Operativo que nos queda por ver es el encargado de proporcionar la capa de abstracción que llamamos Sistema de Aplicaciones. Este módulo será uno de los más importantes del Sistema, ya que en él estarán implementados todos los Administradores de recursos del Sistema Informático y del Sistema Operativo. Se hará referencia a él con el nombre de módulo SAM o simplemente SAM.

Como digo, el módulo SAM es el encargado de dar acceso a recursos reales y virtuales que estén disponibles en el Sistema para que los utilicen las aplicaciones. Las aplicaciones son Soluciones Informáticas que se presentan en un código objeto que, por lo general, no suele ser código máquina. El código objeto de las aplicaciones se interpretará por el SAM, generando el correspondiente código máquina para que la aplicación funcione en el Sistema. Normalmente las aplicaciones más potentes incluirán partes desarrolladas como procesos o como programas, para dotarle de mayor eficiencia, y será la parte de la aplicación de comunicarse con esas dependencias.

Al igual que ocurría con los programas, para el desarrollo de aplicaciones va a ser necesario utilizar otro lenguaje de programación de más alto nivel. Este lenguaje seguirá basándose en el idioma de programación que definimos al principio de esta aventura, pero incluyendo estructuras nativas mucho más abstractas. Algunas de las más importantes estructuras nativas (que ya se podrán considerar clases) permiten:
  • Mostrar gráficos utilizando métodos de dibujo, o utilizar funciones más completas de generación de escenarios, para comunicarse con el usuario a través de la pantalla. La aplicación puede invocar un método para que el SAM se encargue de mostrar por pantalla una ventana contenedor de la aplicación, de un texto formateado, o cualquier característica que se desee. Esto hace que el desarrollador no tenga que preocuparse por detalles gráficos básicos y el usuario podrá disfrutar de una buena experiencia visual gracias a la estandarización que ofrece el SAM.
  • Generar sonido utilizando métodos de sintentización. La aplicación puede llamar a los métodos de sintentización que ofrece el SAM para emitir sonidos sintetizados o predefinidos. Igual que con los gráficos, esto permite mejorar la experiencia del usuario.
  • Conectarse a sistemas remotos a través de la red para enviar o recibir cualquier tipo de información. El SAM es el encargado de ofrecer la capa de abstracción sobre la red. Nativamente la red sólo interconecta dos Sistemas Informáticos; si se desea acceder a un tercer Sistema Informático conectado con el otro SIM, es necesario que sea ese otro SIM el que se encargue de mediar en la comunicación entre los otros dos. Gracias al SAM, es posible abstraerse y conectar, enviar o recibir de cualquier Sistema Informático accesible sin preocuparse de los métodos de delegación nativos de la red.
  • Ofrecer acceso a discos con una estructura de particiones, directorios, ficheros y archivos. Hasta este nivel, los discos utilizan la funcionalidad nativa de acceso por paquetes, pero es a partir del SAM donde la información que incluyan se muestra de forma abstracta en forma de esos recursos.
  • Identificar diferentes usuarios del Sistema. El SIM es el encargado de proporcionar diferentes identidades que se podrán jerarquizar para que tengan diferentes permisos de acceso, escritura, uso, etc. de recursos del Sistema. También permite que el Sistema sea multiusuario, ofreciendo los recursos correspondientes a los usuarios del Sistema de forma concurrente.
  • Estimular las aplicaciones con eventos remotos que se producirán en el Sistema. Indicando al SAM el tipo de evento (movimiento del ratón, escritura en el teclado, etc...), se puede invocar una función de entrada en las aplicaciones. Esto evita que el desarrollador tenga que revisar continuamente si un recurso ha comunicado algún tipo de mensaje.
  • Acceder a recursos locales o remotos de forma transparente. A nivel de aplicación, la ubicación de un recurso es algo secundario; ese recurso puede estar en local o estar generado remotamente en otro Sistema. La lista de recursos disponibles que ofrece el SAM diferencia los distintos recursos, pero a nivel de métodos son iguales independientemente de su ubicación. Esto evita que el desarrollador tenga que trabajar para ofrecer funcionalidades en diferentes entornos, y facilita la internacionalización de la aplicación.
Durante las entradas finales se entrará en profundidad en cada una de estas funcionalidades nativas, viendo sus cometidos principales, dependencias, y formas de afrontar problemas de alto nivel que irán surgiendo. Aunque la forma de implementar estas estructuras puede variar de un Sistema de Aplicaciones a otro, el estándar también perfilará aquellas para mantener compatibilidad entre las diferentes abstracciones que se implementan. La facilidad de desarrollo a este nivel, junto con la potencia nativa que ofrece el SAM, es quizás el nivel donde estarán disponibles más y mejores Soluciones Informáticas.

Comentarios

18/01/2015 05:10
porque no muestra como es el paso a paso verdadero fuera de las palabras y pasar al lenguaje de programación como tal

26/08/2011 11:30
Pues el Módulo SAM es, yo creo que sin duda, el que los programadores más van a utilizar. El motivo principal es que, en el SAM, se incluye el FrameWork -el Fi(eWa)- que es el "estándar de programación de alto nivel" de todo el Proyecto eWa. También, la eficiencia que su uso representa frente a virtualizar un proceso con el módulo LiVi o a programar lo mismo usando el módulo LiSi.
Por último, los módulos personalizados seguramente siempre serán menos usados que los incluidos en el propio sistema.

4/04/2011 10:21
CUALES SON LOS MODULOS MAS UTILIZADOS .

Deja tu comentario


Se enviará usando la Red Social @visitante
¿Quieres responder con otra cuenta de TuEntidad.es?
Usa MonoMola o LoTienes.

Búsqueda

Calendario

- Día 1
- Día 2
- Día 3
- Día 4
- Día 5
- Día 6
- Día 7
- Día 8
- Día 9
- Día 10
- Día 11
- Día 12
- Día 13
- Día 14
- Día 15
- Día 16
- Día 17
- Día 18
- Día 19
- Día 20
- Día 21
- Día 22
- Día 23
- Día 24
- Día 25
- Día 26
- Día 27
- Día 28
- Día 29

Código

- Sistemas Informáticos
- Compilador
- GAM
- GAE
- Kérnel
- LiSi
- ViSi
- SAM
Licencia LSW

Comentan

- Día 1 (16) 8/06 02:28
- Día 29 (19) 13/03 04:10
- Día 10 (18) 23/01 22:16
- Día 3 (9) 10/12 08:55
- Día 2 (19) 10/12 08:54
- Día 7 (4) 5/11 21:29
- Día 11 (44) 25/10 01:39
- Día 4 (3) 24/09 13:45
- Día 28 (2) 6/04 04:01
- Día 26 (1) 17/07 01:21
- Día 27 (4) 29/05 14:50
- Día 8 (9) 29/05 05:35
- Día 24 (2) 18/01 05:16
- Día 17 (5) 18/01 05:10
- Día 13 (7) 6/12 18:44
- Día 15 (1) 30/08 08:53
- Día 6 (2) 25/08 02:14
- Día 5 (4) 7/04 00:50
- Día 21 (6) 26/06 21:26
- Día 18 (2) 26/06 03:09
- Día 23 (2) 22/04 13:45
- Día 25 (1) 11/03 21:34
- Día 19 (3) 19/01 17:33
- Día 14 (2) 7/01 22:06

Valid HTML 4.01 Transitional