경량 링 버퍼 관리자
라이브러리는 일반적인 FIFO 링 버퍼 구현을 제공합니다.
먼저 읽으십시오 : 문서화
특징
- C (C11)로 작성, 크기 데이터 유형에 대한
size_t 와 호환됩니다. - 플랫폼 독립 기본 코드 - 더 작은 CPU 아키텍처에 대한 제한이있는 (
< sizeof(size_t) ) - FIFO (첫 번째 첫 번째) 버퍼 구현
- 동적 메모리 할당이 없으면 데이터는 정적 배열입니다
- 루프 대신 최적화 된 메모리 사본을 사용하여 데이터를 읽고/쓰기로 작성합니다.
- 스레드 안전한 스레드 단일 쓰기 및 단일 읽기 항목이있는 파이프로 사용될 때 - CPU 읽기/쓰기 작업이 단일
size_t 일 때 (예 : ARM Cortex -M) - 단일 쓰기 및 단일 읽기 항목이있는 파이프로 사용될 때 Safe
size_t 에 대한 CPU 읽기/쓰기 작업이 단일 명령어 (예 : Arm Cortex -M) 일 때 안전합니다. -
sizeof(size_t) 보다 아키텍처가 작은 CPU 시스템의 경우 (예 : AVR), 버퍼 쓰기의 읽기 쓰기 작동을 위해서는 원자 보호가 필요합니다. - 버퍼와 애플리케이션 메모리 사이의 제로 카피 오버 헤드로 DMA 전송 및 메모리 전송에 적합합니다.
- 데이터 엿보기 지원, 읽기를 건너 뛰고 쓰기를위한 발전
- 이벤트 알림 지원을 구현합니다
- 사용자 친화적 인 MIT 라이센스
기여하다
새로운 기여는 항상 환영합니다. 진행할 간단한 지침 :
- 포크 Github 저장소
- 프로젝트에 이미 사용 된 C 스타일 및 코딩 규칙을 따르십시오.
- 새로운 기능 또는 버그 수정으로 분기를 개발하기위한 풀 요청 생성
또는 당신은 다음을 수행 할 수 있습니다.
- 버그를보고하십시오
- 기능 요청을 요청하십시오