system-calls

¿Qué hace la llamada al sistema brk ()?

Según el manual de programadores de Linux: Brk () y sbrk () cambian la ubicación de la interrupción del programa, que ... a crece hacia abajo. Pero lo que no explican es que lo que sucede cuando montón ocupa todo el espacio entre montón y pila?

¿Cómo se implementa malloc() internamente? [duplicar]

Esta pregunta ya tiene una respuesta aquí: ¿Cómo funcionan malloc() y free ()? ... program y veo un montón de sbrk llamadas al sistema, haciendo man sbrk habla de que se utiliza en malloc() pero no mucho más.

¿Cómo controlar en qué núcleo se ejecuta un proceso?

Puedo entender cómo se puede escribir un programa que usa múltiples procesos o subprocesos: fork() un nuevo proceso y usar IP ... " una vez que se elige un núcleo, ¿qué instrucciones se deben ejecutar para que ese núcleo comience a buscar instrucciones?"

dup2 / dup - ¿por qué necesitaría duplicar un descriptor de archivo?

Estoy tratando de entender el uso de dup2 y dup. De la página de manual: DESCRIPTION dup and dup2 create a copy of the f ... acer una copia del mismo? Le agradecería si pudiera explicarme y darme un ejemplo donde dup2 / dup es necesario. Gracias

Cómo escribir un manejador de señal para atrapar SIGSEGV?

Quiero escribir un controlador de señal para capturar SIGSEGV. Protejo un bloque de memoria para leer o escribir usando cha ... roblema es que solo se ejecuta el controlador de señal y no puedo volver a la función principal después de capturar la señal.

ejemplos prácticos use dup o dup2

Sé lo que dup / dup2 sí, pero no tengo ni idea de cuándo se usaría. ¿Algún ejemplo práctico? Gracias.

¿Qué es mejor "int 0x80"o " syscall"?

Estudio el Kernel de Linux y descubrí que para la arquitectura x86_64 la interrupción int 0x80 no funciona como una llamada a ... egunta es: en el caso de la arquitectura x86 ¿qué es más preferible syscall o int 0x80 y por qué? EDITAR : Uso el núcleo 3.4

¿Llamar al sistema operativo para abrir url?

¿Qué puedo usar para llamar al sistema operativo para abrir una URL en cualquier navegador que el usuario tenga por defecto? No me preocupa la compatibilidad entre sistemas operativos; si funciona en Linux eso es suficiente para mí!

advertencia: declaración implícita incompatible de la función incorporada 'printf' [habilitada por defecto]

Estoy usando el siguiente código C: #include <unistd.h> #include <fcntl.h> #include <sys/types.h> int mai ... ction ‘printf’ [enabled by default] ¿Qué significa y cómo apaciguar al compilador de C para que no levante la advertencia?

¿Cómo puedo reimplementar (o empaquetar) una función syscall en Linux?

Supongamos que quiero tomar completamente el control de la llamada al sistema open (), tal vez para envolver el syscall real ... l open() definido por el usuario y el libc open(). Por favor, comparta cualquier otra técnica para lograr el mismo objetivo.

llamada al sistema y cambio de contexto

Lamento hacer esta pregunta cuando ya se ha hecho, pero no pude obtener una claridad de ellos. Así que estoy haciendo las sig ... regunto qué pasaría en el caso de que el cambio de contexto tenga lugar en el hora de la llamada al sistema. ¿Algún ejemplo ?

Historia de syscalls añadidos a Linux?

¿Hay algún lugar donde pueda obtener una lista completa de la versión mínima de Linux necesaria para cada syscall? Estoy bus ... a las preguntas del formulario " Si uso syscall X, ¿cuál es la versión mínima de Linux en la que puede ejecutarse mi código?"

¿Dónde puedo encontrar el código fuente de la llamada al sistema?

En Linux, ¿dónde puedo encontrar el código fuente para todas las llamadas al sistema dado que tengo el árbol de fuentes? Adem ... nte y el ensamblado de una llamada al sistema en particular, ¿hay algo que pueda escribir en la terminal como-my_system_call?

¿Qué sucede si utiliza el 32-bit int 0x80 Linux ABI en código de 64 bits?

int 0x80 en Linux siempre invoca el ABI de 32 bits, independientemente del modo desde el que se llame: args in ebx, ecx, ... ... é sucede si pasa args de puntero que tienen mitades superiores distintas de cero? ¿Funciona si le pasas punteros de 32 bits?