Trawling

최신기사

AI, 개발 도구, 오픈소스, 보안과 인프라의 변화와 이용 조건을 설명하는 최신 기사와 해설입니다.

Docker 레이어에 숨은 설계상의 타협

발행

Docker 이미지 레이어는 전체 파일시스템이 아니라 순서대로 적용하는 변경 집합입니다. OCI는 파일 삭제를 `.wh.*`라는 특수 이름으로 표현하는데, 이 때문에 같은 이름의 일반 파일은 이미지에 온전히 담기지 않으며 빌드 직후와 이미지 내보내기·가져오기 뒤의 결과가 달라질 수 있습니다.

CHICKEN Scheme 관리자가 말하는 Scheme 구현과 CHICKEN 6

발행

CHICKEN Scheme 관리자 Peter Bex가 CHICKEN 6의 UTF-8 처리와 출시 지연을 부른 힙 손상 버그, Scheme 생태계의 표준화 문제를 설명합니다. 컴파일러 최적화 구상과 PostgreSQL을 선호하는 이유, REPL 개발 경험도 함께 다룹니다.

Zig 0.17.0 출시 — 빌드 시스템 재구성과 증분 컴파일 개선

발행

Zig 0.17.0은 5개월 동안 206명의 기여자가 만든 925개 커밋을 담은 릴리스입니다. 빌드 시스템을 재구성하고 Build Server Protocol을 도입했으며, x86_64 Linux 프로젝트에서 증분 컴파일을 활용할 수 있도록 ELF 링커를 개선했습니다.

Effect-TS — TypeScript용 프로덕션 애플리케이션 라이브러리

발행

Effect는 TypeScript 애플리케이션에서 타입 오류 처리, 의존성 주입, 구조적 동시성, 스케줄링, 추적, 스키마 검증을 다루는 라이브러리입니다. 4.x는 최소 3년 지원을 보장하는 LTS 버전이며, 런타임별 플랫폼·SQL·AI 통합 패키지도 함께 제공합니다.

건망증 있는 CPU — M4에서 Linux 부팅하기

발행

M4 Mac mini에서 Linux를 부팅하는 과정에서 마주친 하드웨어 제약과 CPU 오류를 설명합니다. 특히 WFI 명령이 CPU 레지스터를 지우는 문제를 우회하는 방법이 Linux와 m1n1에 반영돼, M4 계열 기기에서 모든 코어를 켜고 부팅하는 길이 열렸습니다.

Generic Const Arguments와 개발자

발행

Rust Const Generics 프로젝트 그룹이 제네릭 매개변수를 포함한 상수 인자를 지원하는 GCA 기능군의 설계와 사용법을 소개합니다. 기존 제약을 풀지만 모든 기능은 아직 실험 단계이며, 안정화 제안까지 시간이 더 필요합니다.

Caveman — 코딩 에이전트의 말과 입력을 줄이는 스킬·프록시

발행

Caveman은 코딩 에이전트의 답변 문장을 짧게 만드는 스킬과 로그·도구 결과를 압축하는 로컬 프록시를 제공합니다. 저장소가 제시한 벤치마크에서는 스킬만 썼을 때 출력 토큰이 8.5% 줄었고, 프록시 테스트에서는 입력 토큰이 33.2% 감소했지만 작업별 결과 차이와 측정 한계도 함께 공개합니다.

컨텍스트 언어 모델 — 모델이 직접 관리하는 문맥

발행

Context Language Models(CL M)는 문맥을 파일로 다루고 모델이 직접 수정하게 합니다. 여러 벤치마크에서 기존 문맥 관리 방식보다 정확도나 점수를 높이면서 연산량을 줄였고, 강화학습과 캐시 재사용으로 성능을 더 개선했습니다.

llama.cpp에 Qwen4Exp MTP 지원 추가

발행

llama.cpp에 Qwen4Exp의 MTP(Multi-Token Prediction) 초안 모델을 추가한 PR이 병합됐습니다. MTP 블록을 변환·로드하고, 블록이 없는 draft context에서 recurrent memory의 롤백 처리도 보완합니다. 사용자 테스트에서는 짧은 컨텍스트에서 생성 속도가 오른 사례가 있었지만, 긴 컨텍스트에서는 메모리 부족과 속도 저하도 보고됐습니다.

리눅스 커널 취약점 수정: Debian, trixie용 보안 업데이트 배포

발행

Debian 보안 권고 DSA-6528-1은 Linux 커널의 여러 결함이 권한 상승, 서비스 거부, 정보 유출로 이어질 수 있다고 알립니다. Debian trixie에서는 linux 패키지 6.12.111-1에서 수정했으며, Hacker News에서는 CVE가 대량으로 발급된 배경과 업데이트 우선순위를 두고 의견이 갈렸습니다.

Cloudflare K2: 서버리스 이벤트 스트림

발행

Cloudflare가 객체 저장소 R2를 바탕으로 구축한 이벤트 스트리밍 서비스 K2를 공개 베타로 출시했습니다. 데이터를 오래 보관하고 여러 소비자가 각자 처리하도록 설계했으며, 초기 버전은 쓰기 지연이 99백분위 기준 약 1초입니다.

Pi Durable — 장시간 실행과 복구를 지원하는 에이전트 하네스

발행

Pi Durable은 중단 뒤에도 작업을 이어가고 여러 사용자가 함께 조작하는 에이전트 애플리케이션을 만들기 위한 TypeScript 프레임워크입니다. 작업 체크포인트, 재실행 정책, 대화별 문서와 확장 기능을 제공하며, 현재는 API가 바뀔 수 있는 실험 단계입니다.

C#의 struct는 꼭 스택에 있지 않습니다 — CLR의 메모리 관리 방식

발행

C#에서 struct와 class의 차이는 스택과 힙의 구분이 아니라 값 의미론과 참조 의미론입니다. struct는 선언된 컨테이너가 놓인 곳에 저장되므로 클래스 필드나 배열, async 상태 머신 안에서는 힙에 놓일 수 있습니다. 글은 박싱, 배열의 메모리 배치, Span<T>와 struct 설계 원칙까지 살펴봅니다.

메시지 큐로 쓰던 데이터베이스, 이제 Kafka를 씁니다

발행

Tigris는 FoundationDB 기반 큐 QuiCK를 운영하다가 작업 증가로 생기는 읽기·쓰기 부담과 커스텀 코드 문제를 줄이려고 일부 비동기 작업을 Kafka로 옮겼습니다. 복제 작업은 이중 쓰기 문제를 피하려고 FoundationDB에 남겼으며, 두 시스템의 역할을 나눈 기준과 전환 뒤 쓰기량이 줄어든 과정을 설명합니다.

Rust 1.99.0 출시

발행

Rust 1.99.0이 안정 버전으로 출시됐습니다. C ABI 가변 인자를 받는 함수를 Rust로 정의하는 기능과 raw pointer의 크기·정렬 정보를 다루는 기능이 안정화됐으며, Box::leak으로 누수시킨 메모리를 나중에 해제하는 패턴은 피하도록 문서 지침을 바꿨습니다.

페이지 테이블 메모리 사용량

발행

페이지 테이블은 매핑한 데이터 크기의 약 1/512만큼 메모리를 쓰지만, 같은 메모리를 여러 주소 공간에 매핑하면 비용이 누적됩니다. 글은 데이터베이스와 NUMA 사례를 통해 페이지 테이블이 메모리 압박과 원격 메모리 지연의 원인이 되는 과정을 설명합니다.