Saltar al contenido

Diferencia entre escribir () y printf ()

Este tutorial ha sido aprobado por expertos para que tengas la seguridad de la veracidad de este post.

Una llamada al sistema es una llamada a una función que no es parte de la aplicación pero está dentro del kernel. El kernel es una capa de software que le brinda algunas funcionalidades básicas para abstraer el hardware. Aproximadamente, el núcleo es algo que convierte su hardware en software.

Siempre usas en última instancia write() escribir cualquier cosa en un periférico, sea cual sea el tipo de dispositivo en el que escriba. write() Esta diseñado para solo escribir una secuencia de bytes, eso es todo y nada más. Pero como write() se considera demasiado básico (es posible que desee escribir un número entero en base diez, o un número flotante en notación científica, etc.), diferentes tipos de entornos de programación le proporcionan diferentes bibliotecas para facilitarle.

Por ejemplo, el lenguaje de programación C te da printf() que le permite escribir datos en muchos formatos diferentes. Entonces, puedes entender printf() como una función que convierte sus datos en una secuencia formateada de bytes y que llama write() para escribir esos bytes en la salida. Pero C++ te da cout; Java System.out.printlnetc. Cada una de estas funciones termina en una llamada a write() (al menos en los sistemas POSIX).

¡Una cosa que debe saber (importante) es que tal llamada al sistema es costosa! No es una llamada de función simple porque necesita llamar a algo que está fuera de su propio código y el sistema debe asegurarse de que no está tratando de hacer cosas desagradables, etc. el almacenamiento en búfer está integrado; de tal manera que no siempre se llama a write, pero sus datos se mantienen en una estructura oculta y se escriben solo cuando es realmente necesario o necesario (el búfer está lleno o realmente desea ver el resultado de su impresión).

Esto es exactamente lo que sucede cuando administras tu dinero. Si mucha gente te da 5 dólares cada uno, ¡no irás a depositarlos al banco! Los guardas en tu billetera (este es el impresión) hasta el punto en que esté lleno o ya no quieras guardarlos. Luego vas al banco y haces un gran depósito (este es el escribir). Y sabes que poner 5 dólares en tu billetera es mucho más rápido que ir al banco y hacer el depósito. El banco es el kernel/OS.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)


Tags :

Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *