<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="es">
		<id>https://1984.lsi.us.es/wiki-ssoo/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Fravalpin</id>
		<title>Wiki de Sistemas Operativos - Contribuciones del usuario [es]</title>
		<link rel="self" type="application/atom+xml" href="https://1984.lsi.us.es/wiki-ssoo/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Fravalpin"/>
		<link rel="alternate" type="text/html" href="https://1984.lsi.us.es/wiki-ssoo/index.php/Especial:Contribuciones/Fravalpin"/>
		<updated>2026-06-08T05:38:38Z</updated>
		<subtitle>Contribuciones del usuario</subtitle>
		<generator>MediaWiki 1.29.0</generator>

	<entry>
		<id>https://1984.lsi.us.es/wiki-ssoo/index.php?title=Llamadas_al_sistema&amp;diff=1484</id>
		<title>Llamadas al sistema</title>
		<link rel="alternate" type="text/html" href="https://1984.lsi.us.es/wiki-ssoo/index.php?title=Llamadas_al_sistema&amp;diff=1484"/>
				<updated>2011-10-15T11:19:44Z</updated>
		
		<summary type="html">&lt;p&gt;Fravalpin: /* 2.4. Llamadas al sistema */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= 2.4. Llamadas al sistema =&lt;br /&gt;
Una llamada al sistema es una petición que hace un proceso al sistema operativo para obtener cualquier tipo de servicio. La interfaz que el sistema operativo presenta a los programas se denomina API, donde constan todas las llamadas al sistema de las que dispone.&lt;br /&gt;
Cada sistema operativo implementa su propia API (por eso normalmente un programa diseñado para un cierto sistema operativo no funciona en otro sistema operativo diferente).&lt;br /&gt;
&lt;br /&gt;
Los programas se hacen independientes de la maquina, aunque dependientes del API. Por ello, existen APIs estandarizadas, como [http://es.wikipedia.org/wiki/POSIX POSIX].&lt;br /&gt;
&lt;br /&gt;
== 2.4.1. Compatibilidad hacia atrás y hacia delante==&lt;br /&gt;
&lt;br /&gt;
En un sistema operativo bien diseñado, la interfaz de las llamadas al sistema ha de ser estable a lo largo del tiempo, de forma que la modificación de su funcionamiento interno no repercuta en el funcionamiento externo de éstas y así asegurar la compatibilidad hacia atrás ([http://en.wikipedia.org/wiki/Backward_compatibility Backward compatibility]). Además, aquellas llamadas que queden obsoletas o en desuso han de ser conservadas para, de la misma manera, asegurar el funcionamiento de programas antiguos ([http://en.wikipedia.org/wiki/Legacy_system?=Legacy_support Legacy Support]).&lt;br /&gt;
&lt;br /&gt;
En ocasiones los sistemas operativos pueden incluir en su diseño criterios de compatibilidad hacia adelante ([http://en.wikipedia.org/wiki/Forward_compatibility Fordward compatibility]). Un ejemplo de este tipo de sistemas son aquellos capaces de mostrar información detallada al usuario de aquello que no pueden comprender o los sistemas ignorantes, que son aquellos que sólo ejecutan lo que pueden comprender y obvian el resto.&lt;br /&gt;
&lt;br /&gt;
== 2.4.2 El punto de entrada ==&lt;br /&gt;
&lt;br /&gt;
Llamamos punto de entrada a la posicion de memoria desde la cual es posible solicitarle servicios al sistema operativo, normalmente hay un unico punto de entrada.&lt;br /&gt;
En algunos sistemas operativos el acceso al punto de entrada se realiza mediante llamadas a subprogramas.&lt;br /&gt;
La direccion de memoria del punto de entrada puede cambiar si se modifica el sistema operativo (lo que invalida a todos los programas ejecutables existentes antes del cambio, que no podran solicitar servicios al no conocer la posicion del punto de entrada).&lt;br /&gt;
Algunos sistemas operativos evitan este problema utilizando una direccion fija, mientras que otros lo hacen manteniendo una referencia a dicha direccion.&lt;br /&gt;
&lt;br /&gt;
== Ejemplo de llamada al sistema en lenguaje ensamblador == &lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;asm&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
section .text&lt;br /&gt;
    global _start&lt;br /&gt;
_start:&lt;br /&gt;
    mov eax, 4         ;cargamos un 4 en el registro eax para llamar a print&lt;br /&gt;
    mov ebx, 1         ;cargamos un 1 para la salida estandar&lt;br /&gt;
    mov ecx, string    ;Se guarda el mensaje&lt;br /&gt;
    mov edx, lenght    ;El tamaño del mensaje&lt;br /&gt;
    int 80h            ;La llamada al sistema&lt;br /&gt;
&lt;br /&gt;
    mov eax, 1&lt;br /&gt;
    mov ebx, 0&lt;br /&gt;
    int 80h&lt;br /&gt;
&lt;br /&gt;
section .data&lt;br /&gt;
    string: db &amp;quot;Hola Mundo&amp;quot;, 0x0A&lt;br /&gt;
    lenght: equ 13&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Fravalpin</name></author>	</entry>

	</feed>