영어프랑스어스페인어

Ad


온웍스 파비콘

cstream - 클라우드에서의 온라인

Ubuntu Online, Fedora Online, Windows 온라인 에뮬레이터 또는 MAC OS 온라인 에뮬레이터를 통해 OnWorks 무료 호스팅 제공업체에서 cstream을 실행하세요.

이것은 Ubuntu Online, Fedora Online, Windows 온라인 에뮬레이터 또는 MAC OS 온라인 에뮬레이터와 같은 여러 무료 온라인 워크스테이션 중 하나를 사용하여 OnWorks 무료 호스팅 제공업체에서 실행할 수 있는 cstream 명령입니다.

프로그램:

이름


씨스트림 — 대역폭 제한, FIFO, 오디오, 복제 및 직접 데이터 스트림
확장된 보고 지원.

개요


씨스트림 [-b NUM] [-B NUM] [-i 파일 이름] [-I ] [-l] [-n NUM] [-o 파일 이름] [-O ]
[-p 파일 이름] [-t NUM] [-T NUM] [-v NUM] [-V] [파일 이름]

기술


Cstream UNIX 도구와 마찬가지로 데이터 스트림을 필터링합니다. dd(1). 좀 더 전통적인 특징을 가지고 있어요
명령줄 구문, 정확한 대역폭 제한 및 보고 지원
FIFO. 데이터 제한 및 처리 속도 계산은 4GB가 넘는 파일에 적용됩니다.

Cstream 파일 이름이 없으면 표준 입력에서 읽고 표준 출력에 씁니다.
주어진. 또한 원하는 경우 데이터를 '생성'하거나 '싱크'합니다.

옵션 :

-b NUM 읽기/쓰기에 사용되는 블록 크기를 다음으로 설정합니다. NUM. 기본값은 8192바이트입니다.

-B NUM 버퍼 입력 최대 NUM 쓰기 전에 바이트. 기본값은 블록 크기입니다. 그것은
이것을 블록 크기 아래로 설정하면 오류가 발생합니다. 테이프를 쓸 때 유용합니다.
많은 작은 쓰기 중 적은 수의 큰 쓰기를 선호하는 것과 유사합니다.

-c NUM 동시 작업. 별도의 출력 프로세스를 사용하세요. 이것은 특히 유용합니다
-B 옵션과 함께 사용됩니다.
0 = 하나의 프로세스만 사용(기본값)
1 = 읽기 프로세스가 버퍼링됩니다.
2 = 쓰기 프로세스가 버퍼링됩니다.
3 = 두 프로세스 모두 버퍼링됩니다.
큰 버퍼 크기와 함께 사용하면 메모리가 자주 로드됩니다.
매우 심각하게, 리더가 수집한 버퍼를 리더로 전송할 때마다
작가. -c 3을 사용하고 버퍼 크기가 128MB인 경우
메모리는 한 번에 터치됩니다.

-i NUM

-o NUM 입력 또는 출력에 사용할 파일 이름을 각각 설정합니다. 출력 파일의 경우
이름이 "-"이면 데이터가 삭제됩니다. 입력 파일 이름이 "-"인 경우 데이터는
'공허에서' 생성됩니다. 이러한 옵션이 제공되지 않으면 stdin/stout은
사용된. 주어야 할 경우 -o or -i 옵션을 선택하고 stdin/stdout을 원할 경우
다음과 같이 빈 문자열입니다.

cstream -i''

TCP 지원이 (기본값)으로 컴파일된 경우 호스트 이름:포트번호는 다음을 시도합니다.
지정된 포트에서 지정된 호스트에 연결하면 :portnumber가 열립니다.
로컬 컴퓨터의 TCP 소켓을 만들고 연결이 도착할 때까지 기다립니다. 보안
참고: cstream에는 여기에 연결할 수 있는 호스트를 제한하는 메커니즘이 없습니다.
포트. 귀하의 컴퓨터에 다른 네트워크 필터가 없으면 누구나 다음을 수행할 수 있습니다.
연결하십시오.

-I

-O
입력 및 출력 파일의 유형을 각각 지정합니다.
문자열인 경우
'f'를 포함하면 FIFO가 생성됩니다.
문자열인 경우
'a'가 포함되어 있으면 파일은 OpenSound 호환 오디오로 간주됩니다.
CD와 같은 설정으로 전환됩니다.
문자열인 경우
't'가 포함되어 있으면 스트림 복사본이 파일 설명자 3으로 전송됩니다.
문자열인 경우
'N'이 포함되어 있으면 이름에 ":"가 있어도 해당 파일에 TCP가 사용되지 않습니다.

-l 통계에 줄 수를 포함합니다.

-n NUM 총 데이터 양을 다음으로 제한하십시오. NUM. 더 많은 입력이 가능하다면,
폐기되다, 씨스트림 한도에 도달하면 종료됩니다. 적은 경우
입력하면 한계에 도달하지 않으며 오류가 표시되지 않습니다.

NUM 뒤에 'k', 'm' 또는 'g'가 있을 수 있으며 이는 킬로바이트, 메가바이트 또는
기가바이트(여기서 Kilo = 1024). 이는 모든 숫자 옵션에 적용됩니다.

-p 파일 이름
cstream의 프로세스 ID를 작성합니다. 파일 이름. cstream이 별도의 작성기를 사용하는 경우
프로세스(옵션 -c), 이는 상위(리더) 프로세스의 pid입니다.

-t NUM 데이터 스트림의 처리량을 다음으로 제한합니다. NUM 바이트/초. 제한은 다음에서 수행됩니다.
입력 측에서는 이 속도 이상을 허용하지 않는 cstream을 사용할 수 있습니다. 만약
당신이 제공한 숫자가 양수이면 cstream은 오류를 누적하고
전체 세션에 대해 지정된 값의 전체 속도입니다. 부정적인 말을 하면
숫자인 경우 이는 각 읽기/쓰기 시스템 호출 쌍의 상한값입니다. 다시 말해서:
음수는 해당 한도를 초과하지 않으며 양수는 초과합니다.
이전의 활용도가 낮은 경우에 도움이 됩니다.

-T NUM 매 num초마다 처리량을 보고합니다.

-v NUM 상세 수준을 다음으로 설정합니다. NUM. 기본적으로 0으로 설정되어 있는데, 이는 메시지가 없음을 의미합니다.
오류가 발생하지 않는 한 표시됩니다. 값 1은 총 데이터 양을 의미합니다.
프로그램 실행이 끝나면 처리량이 표시됩니다. 값 2는 다음을 의미합니다.
첫 번째 읽기/쓰기 쌍이 끝난 이후의 전송 속도도 보고됩니다.
(초기 지연이 있을 때 유용함) 값이 3이면
읽기 및 쓰기에 대한 별도의 측정. 이 옵션은 리소스를 많이 소모하며
현재는 구현되지 않습니다. 값 4는 각 단일 항목에 대한 알림을 의미합니다.
읽기/쓰기가 표시됩니다. 높은 값에는 더 낮은 모든 메시지 유형이 포함됩니다.
values.

-V 버전 번호를 stdout으로 인쇄하고 0으로 종료합니다.

파일 이름 옵션 스위치가 없는 마지막 인수로 단일 파일 이름이 사용됩니다.
-i가 사용되지 않은 경우 입력 파일입니다.

시구스르1

시진포 SIGUSR1(또는 일반적으로 키보드의 Control-T에 매핑되는 SIGINFO) 보내기
cstream으로 인해 stderr에 대한 처리량 비율이 표시됩니다. 스트림은
아무 일도 없었던 것처럼 계속하세요.

시구스르2 요청된 경우 종료하고 처리량 비율을 보고합니다.

시업 실수로 SIGHUP을 너무 자주 보내는 것을 발견했습니다. 하지만 이를 무시하거나 오용하는 경우
SIGHUP은 나에게 선택 사항이 아닙니다. 따라서 언제 씨스트림 SIGHUP을 받았습니다. 5분 정도 기다립니다.
사용자에게 가능한 실수를 수정할 수 있는 기회를 제공하기 위해 몇 초 후에 다시 SIGHUP을 수행합니다.
추가 SIGHUP을 받지 못한 경우, 씨스트림 SIGHUP으로 자살합니다.

사용 예


씨스트림 -o 임시 파일 -v 1 -n 384m -i -
384MB의 지정되지 않은 데이터를 파일에 씁니다. 임시 파일 자세한 내용을 표시합니다.
처리율. 좋은 벤치마크가 되며, 속도는 / dev / null 와 너무 많이 다르다
시스템 대 시스템.

씨스트림 -i 임시 파일 -v 1 -n 384m -o -
동일한 파일을 다시 읽고 데이터를 삭제합니다.

씨스트림 -b 2000 -t 10000 / var / log / messages
시청 가능한 속도로 파일을 표시합니다.

덤프 0sf 400000 - / | 씨스트림 -v 1 -b 32768 -o /dev/rst0 -p PID 파일

죽이기 -USR1 `고양이 pid파일`
다음의 출력을 작성합니다. 덤프(1) 테이프에. 신호가 전송될 때마다 처리량은
현재까지의 데이터 속도가 표시됩니다.

씨스트림 -t 176400 -i /dev/dsp0 -I f -o -
오디오 응용 프로그램을 테스트하는 데 사용할 수 있는 일종의 사운드 카드 에뮬레이터를 만듭니다.
실제 사운드 카드처럼 데이터 속도를 제한하는 쓰기 작업이 필요합니다. 이것
응용 프로그램이 다음을 사용하여 데이터를 쓰려고 할 때 분명히 작동하지 않습니다. mmap(2)과하면
응용 프로그램은 다음을 사용하여 사운드 카드 매개 변수를 설정하려고 할 때 오류를 무시해야 합니다.
ioctls(2).

씨스트림 -t 176400 -i /dev/dsp0 -I f -o /dev/dsp1 -O f
유사한 사운드카드 에뮬레이터로, 데이터를 가져올 수 있다는 점만 다릅니다.
애플리케이션은 여전히 ​​정확한 타이밍을 유지하면서 다른 FIFO에서 전송합니다.

씨스트림 -오아 -o /dev/dsp0 myhost.mydomain.com:17324
호스트 myhost.mydomain.com의 포트 3333을 연결하고 거기에서 발견된 모든 데이터를 연결합니다.
CD 품질의 스테레오 재생에 적합한 설정을 사용하여 사운드 카드로 전송됩니다.

씨스트림 -i myaudiofile.raw -o : 17324
그러면 포트 17324에서 TCP 서버가 열리고 누군가 연결될 때까지 기다립니다.
예를 들어 이전 예의 명령줄). 그러면 내용이 전송됩니다
myaudiofile.raw를 TCP 스트림 아래로 복사합니다(이전 오디오 예의 경우 일반적으로
tosha 또는 cdparanoia 유틸리티에서 얻는 것과 같은 CD 오디오 트랙).

씨스트림 -OD -o 마이파일

O_DIRECT를 사용하여 myfile 파일에 씁니다. 이는 일반적으로 파일 시스템 버퍼가
캐시는 이 파일을 캐시하려고 시도하지 않습니다. 이를 사용하여 복사를 방지할 수 있습니다.
물리적 메모리를 소모하는 작업. cstream이
쓰기 오류는 출력 파일을 O_DIRECT에서 일반 파일로 전환하고 씁니다.
O_DIRECT 없이 쓰기가 성공하면 O_DIRECT가 없는 모든 추가 블록. 실제로
이는 일반적으로 파일 시스템 블록의 배수가 아닌 경우 마지막 블록을 의미합니다.
크기는 여전히 파일에 기록됩니다(기록된 최대 데이터 양
O_DIRECT가 없으면 블록 크기에서 XNUMX을 뺀 값입니다). 그런 식으로 cstream은
출력 파일에는 입력 길이가 있지만 길이가 이상하고 상관 없습니다.
OS가 O_DIRECT 출력에 어떤 제한을 두는지. 다시 말하지만, cstream은 패딩되지 *않습니다*
블록 크기로 출력하면 사용하지 않는 것처럼 동일한 파일 및 파일 크기를 얻습니다.
O_DIRECT, 블록이 올바르지 않을 때마다 O_DIRECT가 아닌 것으로 전환하는 비용
크기.

씨스트림 -i : 3333 | dd obs=8192 | ./cstream -omy파일 -v7 -OD
이것이 TCP 입력을 버퍼링하기 위해 수행해야 하는 작업이므로 마지막 cstream이
짧은 읽기로 인해 O_DIRECT에서 조기에 전환합니다. 귀하의 의견이 가능하다면
짧은 읽기(예: TCP에서) 및 O_DIRECT가 계속 유효한지 확인하려는 경우,
TCP 스트림과 O_DIRECT 스트림 사이에 버퍼가 필요합니다. cstream 이후
아직 다양한 입력 및 출력 블록 크기를 지원하지 않으므로 여기에는 dd가 적합합니다.
이는 OS에 여러 개의 파일 시스템이 필요한 경우에만 필요합니다.
O_DIRECT의 블록 크기. 이 글을 쓰는 시점에서 이 구성이 필요합니다.
O_DIRECT와 함께 TCP 스트림을 사용하기 위한 Linux이지만 FreeBSD에서는 필요하지 않습니다.

씨스트림 -뼈 -o 마이파일
O_SYNC를 사용하여 myfile 파일에 씁니다. 이는 시스템 호출이 반환될 때를 의미합니다.
데이터가 디스크에 있는 것으로 알려져 있습니다. 이는 O_DIRECT와는 다릅니다. O_DIRECT
자체 버퍼링을 수행할 수 있지만 O_SYNC를 사용하면 버퍼링이 전혀 없습니다. 당시
이 글을 쓰는 동안 Linux와 FreeBSD 모두에서 O_SYNC는 매우 느립니다(1/5~1/10).
일반 쓰기) O_DIRECT는 상당히 빠릅니다(일반 쓰기의 1/4~1/2). 너
O_SYNC와 O_DIRECT를 결합할 수 있습니다.

오류


종료 코드 0은 성공을 의미합니다.

종료 코드 1은 명령줄 구문 사용 오류를 의미합니다.

종료 코드 2는 기타 오류, 특히 시스템 오류를 의미합니다.

버그


첫 번째 읽기가 끝난 후 바로 쓰기를 시작한 다음 채울 수 있는 옵션이 있어야 합니다.
백그라운드에서 읽기가 있는 버퍼입니다. 지금 당장은 독자보다 먼저 글쓰기가 시작되지 않습니다.
처음으로 버퍼를 완전히 채웠습니다.

버그가 아닙니다. O_DIRECT를 수행하는 코드는 상당히 정교합니다. 다시 정상으로 돌아가게 됩니다
오류 시 I/O. 하지만 그렇게 하기 전에 두 가지 파일 시스템 블록 크기 요구 사항을 모두 알고 있습니다.
(출력 파일의 파일 시스템이 무엇이든 기본 I/O 블록 크기가 지정됨) 및 페이지
정렬 요구 사항(I/O는 페이지 정렬 버퍼에서 발생함) 그러나, 그
동시 읽기/쓰기(-c 옵션)와 O_DIRECT의 조합은 아직 테스트되지 않았습니다.
몇 가지 테스트가 제대로 이루어졌는지에 대한 기본적인 검증입니다.

onworks.net 서비스를 사용하여 온라인으로 cstream 사용


무료 서버 및 워크스테이션

Windows 및 Linux 앱 다운로드

  • 1
    딥 클린
    딥 클린
    모든 빌드를 중단시키는 Kotlin 스크립트
    Gradle/Android 프로젝트의 캐시.
    Gradle 또는 IDE에서 허용할 때 유용합니다.
    아래에. 스크립트가 테스트되었습니다.
    맥OS이지만...
    다운로드
  • 2
    이클립스 체크스타일 플러그인
    이클립스 체크스타일 플러그인
    이클립스 체크스타일 플러그인
    Checkstyle Java 코드 통합
    Eclipse IDE로 감사합니다. 그만큼
    플러그인은 실시간 피드백을 제공합니다.
    viol에 대한 사용자...
    Eclipse 체크스타일 플러그인 다운로드
  • 3
    AstrOrzPlayer
    AstrOrzPlayer
    AstrOrz Player는 무료 미디어 플레이어입니다.
    소프트웨어, 부품은 WMP 및 VLC 기반입니다. 그만큼
    플레이어는 미니멀한 스타일로,
    XNUMX개 이상의 테마 색상과
    B ...
    AstrOrzPlayer 다운로드
  • 4
    무비스타트
    무비스타트
    Kodi Movistar+ TV는 XBMC/용 애드온입니다.
    Kodi que allowede disponer de un 유엔
    IPTV 서비스 디코더 디코더
    Movistar 통합 en uno de los
    미디어 센터 엄마...
    다운로드
  • 5
    코드 :: 블록
    코드 :: 블록
    Code::Blocks는 무료 오픈 소스입니다.
    크로스 플랫폼 C, C++ 및 Fortran IDE
    가장 까다로운 요구 사항을 충족하도록 제작
    사용자의. 그것은 매우 설계
    연장...
    다운로드 코드::블록
  • 6
    가운데
    가운데
    고급 Minecraft 인터페이스 중 또는 고급
    데이터/구조 추적은
    Minecraft 개요 표시
    실제로 생성하지 않고 그것
    할 수있다 ...
    가운데 다운로드
  • 더»

Linux 명령

Ad