InglésFrancésEspañol

Ad


icono de página de OnWorks

cstream: en línea en la nube

Ejecute cstream en el proveedor de alojamiento gratuito de OnWorks a través de Ubuntu Online, Fedora Online, emulador en línea de Windows o emulador en línea de MAC OS

Este es el comando cstream que se puede ejecutar en el proveedor de alojamiento gratuito de OnWorks utilizando una de nuestras múltiples estaciones de trabajo en línea gratuitas, como Ubuntu Online, Fedora Online, emulador en línea de Windows o emulador en línea de MAC OS.

PROGRAMA:

NOMBRE


cstream - flujos de datos directos, con limitación de ancho de banda, FIFO, audio, duplicación y
soporte extendido de informes.

SINOPSIS


cstream [-b número] [-B número] [-i nombre de archivo] [-I cadena] [-l] [-n número] [-o nombre de archivo] [-O cadena]
[-p nombre de archivo] [-t número] [-T número] [-v número] [-V] [nombre de archivo]

DESCRIPCIÓN


corriente filtra flujos de datos, al igual que la herramienta UNIX dd(1). Tiene un estilo mas tradicional
sintaxis de línea de comandos, soporte para la limitación precisa del ancho de banda e informes y soporte para
FIFO. Los límites de datos y el cálculo de la tasa de rendimiento funcionarán para archivos> 4 GB.

corriente lee de la entrada estándar y escribe en la salida estándar, si no hay nombres de archivo
dado. También 'generará' o 'hundirá' datos si lo desea.

Opciones:

-b número Establezca el tamaño de bloque utilizado para lectura / escritura en número. El valor predeterminado es 8192 bytes.

-B número Entrada de búfer hasta número bytes antes de escribir. El valor predeterminado es el tamaño del bloque. Está
un error para establecer esto en cualquier cosa por debajo del tamaño del bloque. Útil al escribir cintas
y similares que prefieren pocas escrituras grandes de muchas pequeñas.

-c número Operación concurrente. Utilice un proceso separado para la salida. Esto es especialmente útil
en combinación con la opción -B.
0 = usar un solo proceso (predeterminado)
1 = el proceso de lectura se almacenará en búfer
2 = el proceso de escritura se almacenará en búfer
3 = ambos procesos se almacenarán en búfer.
En combinación con un gran tamaño de búfer, esto a menudo cargará su memoria
en gran medida, cada vez que el lector transfiere el búfer que recopiló al
escritor. Si usa -c 3 y tiene un tamaño de búfer de 128 Megabytes 256 MB de
la memoria se tocará de una vez.

-i número

-o número Establezca los nombres de archivo que se utilizarán para la entrada o la salida, respectivamente. Si el archivo de salida
el nombre es "-", los datos simplemente se descartarán. Si el nombre del archivo de entrada es "-", los datos
generarse 'del vacío'. Si no se dan estas opciones, stdin / stout será
usó. Si necesitas dar -o or -i opciones y desea stdin / stdout, especifique el
cadena vacía, como esta:

cstream -i ''

Si se ha compilado el soporte TCP en (predeterminado), hostname: portnumber intentará
conectarse al host especificado en el puerto especificado y: portnumber abrirá un
TCP en la máquina local y espere a que llegue una conexión. SEGURIDAD
NOTA: cstream no incluye ningún mecanismo para restringir los hosts que pueden conectarse a este
Puerto. A menos que su máquina tenga otros filtros de red, cualquiera podrá
conectar.

-I cadena

-O cadena
Especifique el tipo de archivo de entrada y salida, respectivamente.
Si cadena
incluye 'f', se creará un quince.
Si cadena
incluye 'a', se asumirá que el archivo es un audio compatible con OpenSound.
dispositivo y se cambiará a una configuración similar a la de un CD.
Si cadena
incluye 't', se enviará una copia de la secuencia al descriptor de archivo 3.
Si cadena
incluye 'N', TCP no se utilizará para ese archivo incluso si el nombre tiene un ":".

-l Incluya el recuento de líneas en las estadísticas.

-n número Limite la cantidad total de datos a número. Si hay más entrada disponible,
ser descartado, cstream saldrá después de que se haya alcanzado el límite. Si hay menos
entrada, no se alcanzará el límite y no se señalará ningún error.

número puede tener una 'k', 'm' o 'g' al final, lo que significa Kilobytes, Megabytes o
Gigabytes (donde Kilo = 1024). Esto se aplica a todas las opciones numéricas.

-p nombre de archivo
Escriba el ID de proceso de cstream en nombre de archivo. Si cstream usa un escritor separado
proceso (opción -c), este es el pid del proceso padre (lector).

-t número Limite el rendimiento del flujo de datos a número bytes / segundo. La limitación se realiza en
En el lado de entrada, puede confiar en que cstream no aceptará más que esta tasa. Si el
número que da es positivo, cstream acumula errores e intenta mantener el
tarifa general al valor especificado, para toda la sesión. Si das un negativo
número, es un límite superior para cada par de llamadas al sistema de lectura / escritura. En otras palabras:
el número negativo nunca excederá ese límite, el número positivo excederá
para compensar la infrautilización anterior.

-T número Informe el rendimiento cada núm. De segundos.

-v número Establecer el nivel detallado en número. De forma predeterminada, se establece en 0, lo que significa que no se reciben mensajes.
se muestra siempre que no se produzcan errores. Un valor de 1 significa que la cantidad total de datos
y el rendimiento se mostrará al final de la ejecución del programa. Un valor de 2 significa que
También se informará la tasa de transferencia desde el final del primer par de lectura / escritura
(útil cuando hay un retraso inicial). Un valor de 3 significa que también habrá
medidas separadas para lectura y escritura. Esta opción consume recursos y
actualmente no está implementado. Un valor de 4 significa que se da cuenta de cada sencillo
Aparecerá lectura / escritura. Los valores altos incluyen todos los tipos de mensajes de
valores.

-V Imprima el número de versión en la salida estándar y salga con 0.

nombre de archivo Un solo nombre de archivo como último argumento sin un cambio de opción se utilizará como
archivo de entrada si no se ha utilizado -i.

SIGUSR1

SIGNIFICAR Envío de SIGUSR1 (o SIGINFO, que generalmente se asigna a Control-T en su teclado)
a cstream hace que muestre las tasas de rendimiento a stderr. La corriente
Continuar como si nada hubiera pasado.

SIGUSR2 Salga e informe las tasas de rendimiento, si se solicita.

SUSCRÍBETE Me encontré enviando SIGHUP accidentalmente con demasiada frecuencia. Pero ignorando o haciendo mal uso
SIGHUP no es una opción para mí. Por lo tanto, cuando cstream recibido SIGHUP, esperará 5
segundos para otro SIGHUP, para dar a los usuarios la oportunidad de corregir un posible error.
Si no se recibe ningún SIGHUP adicional, cstream se suicida con SIGHUP.

EJEMPLOS


cstream -o archivo tmp -v 1 -n 384m -i -
Escribe 384 megabytes de datos no especificados en un archivo archivo tmp y mostrar detallado
tasa de rendimiento. Hace un buen punto de referencia, la velocidad de / dev / null varía demasiado de
sistema a sistema.

cstream -i archivo tmp -v 1 -n 384m -o -
Vuelva a leer el mismo archivo y descarte los datos.

cstream -b 2000 -t 10000 / var / log / messages
Mostrará el archivo a una velocidad más o menos visible.

arrojar 0sf 400000 - / | cstream -v 1 -b 32768 -o / dev / rst0 -p archivo pid

matar -USR1 gato archivo pid`
Escribe la salida de arrojar(1) en cinta. Cada vez que se envía la señal, el rendimiento
y se mostrará la velocidad de datos hasta ahora.

cstream -t 176400 -i / dev / dsp0 -I f -o -
Hace una especie de emulador de tarjeta de sonido que puede usarse para probar aplicaciones de audio que
Necesito algo para escribir que limite la velocidad de datos como lo hace una tarjeta de sonido real. Esta
obviamente no funciona cuando la aplicación intenta escribir datos usando mmap(2) y
la aplicación tiene que ignorar los errores cuando intenta configurar los parámetros de la tarjeta de sonido usando
ioctl(2).

cstream -t 176400 -i / dev / dsp0 -I f -o / dev / dsp1 -O f
Emulador de tarjeta de sonido similar, excepto que le permite capturar los datos de su
las aplicaciones le envían desde los otros quinientos, sin dejar de tener una sincronización precisa.

cstream -Oa -o / dev / dsp0 myhost.midominio.com:17324
Conecta el puerto 3333 en el host myhost.mydomain.com y cualquier dato que encuentre allí lo hará
enviarse a la tarjeta de sonido, con la configuración adecuada para reproducción estéreo con calidad de CD.

cstream -i miarchivodeaudio.raw -o : 17324
Esto abrirá un servidor TCP en el puerto 17324 y esperará hasta que alguien se conecte (por
ejemplo, la línea de comando del ejemplo anterior). Luego enviará el contenido.
de myaudiofile.raw por el flujo de TCP (para el ejemplo de audio anterior, normalmente un
CD audiotrack como el que obtiene de las utilidades tosha o cdparanoia).

cstream -SOBREDOSIS -o mi archivo

Escriba en el archivo myfile con O_DIRECT. Eso generalmente significa que el búfer del sistema de archivos
cache no intentará almacenar en caché este archivo. Puedes usar eso para evitar copiar
operaciones de comerse la memoria física. Tenga en cuenta que cuando cstream encuentra un
error de escritura, cambiará el archivo de salida de O_DIRECT a un archivo normal y escribirá
todos los demás bloques sin O_DIRECT si se escribe sin O_DIRECT correctamente. En la práctica
eso generalmente significa que su último bloque, si no un múltiplo del bloque del sistema de archivos
tamaño, todavía se escribirán en el archivo (la cantidad máxima de datos escritos
sin O_DIRECT es su tamaño de bloque menos uno). De esa forma, cstream asegura que el
El archivo de salida tiene la longitud de la entrada, por extraña que sea la longitud y no importa
qué restricciones coloca su sistema operativo en la salida O_DIRECT. Nuevamente, cstream * no * pad
la salida al tamaño del bloque, obtiene el mismo archivo y tamaño de archivo como si no estuviera usando
O_DIRECT, a costa de cambiar a no O_DIRECT siempre que un bloque no sea el correcto
El Tamaño.

cstream -i : 3333 | dd obs = 8192 | ./cstream -omiarchivo -v7 -SOBREDOSIS
Esto es lo que debe hacer para almacenar en búfer la entrada de TCP, de modo que el último cstream no
cambie de O_DIRECT prematuramente debido a lecturas cortas. Si tu aporte puede hacer
lecturas breves (por ejemplo, de TCP) y desea asegurarse de que O_DIRECT permanezca en vigor,
necesita un búfer entre la secuencia TCP y la secuencia O_DIRECT. Desde cstream
aún no admite diferentes tamaños de bloque de entrada y salida, dd es adecuado aquí.
Tenga en cuenta que esto solo es necesario si el sistema operativo requiere múltiples del sistema de archivos
tamaño de bloque para O_DIRECT. En el momento de escribir este artículo, esta construcción es necesaria en
Linux para usar secuencias TCP con O_DIRECT, pero no es necesario en FreeBSD.

cstream -HUESO -o mi archivo
Escribe en el archivo myfile con O_SYNC. Esto significa que en el momento en que la llamada al sistema regrese
se sabe que los datos están en el disco. Esto no es lo mismo que O_DIRECT. O_DIRECT
puede hacer su propio almacenamiento en búfer, con O_SYNC no hay almacenamiento en búfer en absoluto. En el momento de
En este escrito, O_SYNC tanto en Linux como en FreeBSD es muy lento (1/5 a 1/10 de
escritura normal) y O_DIRECT es razonablemente rápido (1/4 a 1/2 de escritura normal). usted
puede combinar O_SYNC y O_DIRECT.

ERRORES


El código de salida 0 significa éxito.

El código de salida 1 significa un error de uso de la sintaxis de la línea de comandos.

El código de salida 2 significa otros errores, especialmente errores del sistema.

Errores


Debería haber una opción para comenzar a escribir directamente después de que finalice la primera lectura y luego completar
el búfer con lecturas en segundo plano. Ahora mismo la escritura no comenzará antes que el lector
ha llenado el búfer por completo por primera vez.

No es un error: el código para hacer O_DIRECT es razonablemente sofisticado. Volverá a la normalidad
E / S sobre errores. Pero antes de hacer eso, conoce los requisitos de tamaño de bloque de ambos sistemas de archivos
(el tamaño de bloque de E / S predeterminado será el que sea el sistema de archivos del archivo de salida) y la página
requisitos de alineación (la E / S se producirá desde un búfer alineado con la página). sin embargo, el
combinación de lectura / escritura simultánea (opciones -c) y O_DIRECT no se ha probado más allá de
verificación básica de que algunas pruebas son correctas.

Utilice cstream en línea utilizando los servicios de onworks.net


Servidores y estaciones de trabajo gratuitos

Descargar aplicaciones de Windows y Linux

  • 1
    limpieza profunda
    limpieza profunda
    Un script de Kotlin que destruye todas las compilaciones
    cachés de proyectos Gradle/Android.
    Útil cuando Gradle o el IDE le permiten
    abajo. El script ha sido probado en
    macOS, pero...
    Descargar limpieza profunda
  • 2
    Complemento Eclipse Checkstyle
    Complemento Eclipse Checkstyle
    El complemento Eclipse Checkstyle
    integra el código Java Checkstyle
    auditor en el IDE de Eclipse. El
    El complemento proporciona retroalimentación en tiempo real a
    el usuario sobre viola ...
    Descargar el complemento Checkstyle de Eclipse
  • 3
    AstrOrzPlayer
    AstrOrzPlayer
    AstrOrz Player es un reproductor multimedia gratuito
    software, parte basado en WMP y VLC. los
    jugador tiene un estilo minimalista, con
    más de diez colores temáticos, y también puede
    b ...
    Descargar AstrOrzPlayer
  • 4
    movistartv
    movistartv
    Kodi Movistar+ TV es un ADDON para XBMC/
    Kodi que permite deshacerse de un
    decodificador de los servicios IPTV de
    Movistar integrado en uno de los
    mediacenters ma...
    descargar movistartv
  • 5
    Código :: Bloques
    Código :: Bloques
    Code::Blocks es un programa gratuito, de código abierto,
    IDE multiplataforma C, C++ y Fortran
    construido para satisfacer las necesidades más exigentes
    de sus usuarios. Está diseñado para ser muy
    extens ...
    Descargar Código::Bloques
  • 6
    En medio de
    En medio de
    Interfaz de Minecraft en medio o avanzada
    y el seguimiento de datos / estructura es una herramienta para
    mostrar una descripción general de un Minecraft
    mundo, sin realmente crearlo. Eso
    puede ...
    Descargar en medio
  • Más "

Comandos de Linux

Ad