Category: 개발

GCC 15.1: C++26 기능 미리 보기

2025-04-25
GCC 15.1: C++26 기능 미리 보기

2025년 4월 또는 5월 출시 예정인 GCC 15.1은 C++에 많은 개선 사항을 제공합니다. 주요 특징으로는 팩 인덱싱, 구조화된 바인딩에 대한 속성, `=delete` 함수에 대한 향상된 지원 등 C++26 기능이 있습니다. 이 릴리스는 또한 많은 버그 수정, 모듈 지원 개선, 컴파일 속도 향상을 제공합니다. 그 외 주목할 만한 추가 기능으로는 `constexpr placement new`, 범위 기반 for 루프 수정, 조건부 조회 실패의 조기 진단, 새로운 경고 옵션 등이 있습니다. GCC 15.1은 C++ 개발자에게 상당한 효율성 향상과 향상된 기능을 제공합니다.

개발

AI 코딩 어시스턴트: 생산성 향상 또는 기술 저하?

2025-04-25
AI 코딩 어시스턴트: 생산성 향상 또는 기술 저하?

코딩에서 AI 어시스턴트의 등장은 역설적인 상황을 야기합니다. 생산성 향상이라는 이점이 있지만, 사용하지 않음으로써 기술이 저하될 위험도 있습니다. 연구에 따르면 AI에 대한 과도한 의존은 비판적 사고력과 문제 해결 능력을 감소시킵니다. 이 글에서는 AI 지원 코딩의 장점과 단점을 살펴보고, 개발자들이 'AI 위생' 관행, 즉 AI 출력 검증, AI 없이 정기적으로 코딩하기 등을 채택하여 기술을 유지하고 AI에 대한 과도한 의존을 피하도록 권장합니다. 궁극적인 목표는 진정으로 숙련된 엔지니어가 되는 것입니다.

개발 기술 저하

Mac 설정 효율화: Brewfile, defaults, Zsh 플러그인을 사용하여 편리하게

2025-04-25
Mac 설정 효율화: Brewfile, defaults, Zsh 플러그인을 사용하여 편리하게

새 MacBook의 지루한 앱 설치와 수동 구성에 지치셨나요? 이 글에서는 Brewfile을 사용하여 명령줄 유틸리티, 앱, 글꼴을 일괄 설치하는 방법과 macOS의 defaults 명령줄 도구를 사용하여 시스템 설정을 사용자 지정하는 방법을 소개합니다. 또한 효율성을 높이는 5가지 Zsh 플러그인과 유용한 별칭도 추천합니다. bash 스크립트를 만들어 자동화하고 반복 작업을 없애는 것을 목표로 합니다. 효율성을 추구하는 Mac 사용자라면 꼭 읽어보세요.

개발 macOS 설정

비동기 Rust 시각화: 동시성 vs. 병렬 처리

2025-04-25
비동기 Rust 시각화: 동시성 vs. 병렬 처리

이 기사는 시각화를 사용하여 Rust의 비동기 런타임인 Tokio의 동시성 및 병렬 처리 기능을 자세히 살펴봅니다. 저자는 사인파 그래프를 교묘하게 사용하여 다양한 비동기 작업의 실행 순서와 CPU 사용량을 직관적으로 보여줍니다. 실험 결과 CPU 바운드 작업은 다른 비동기 작업을 차단하지만 Tokio의 `tokio::spawn`과 `tokio::task::spawn_blocking`은 멀티코어 리소스를 효과적으로 활용하여 성능을 향상시키는 것으로 나타났습니다. 이 기사는 Tokio의 작업 스케줄링 전략과 CPU 바운드 작업 처리 방법을 요약하여 명확하고 시각적으로 풍부한 훌륭한 튜토리얼입니다.

개발

GCC 15의 새로운 경고로 인한 커널 빌드 오류

2025-04-25

Linus Torvalds는 커널 6.15-rc3 출시 직전에 Fedora 42에 포함된 GCC 15의 새로운 -Wunterminated-string-initialization 경고를 해결하기 위해 커널에 급하게 패치를 적용했습니다. 이 막판 수정으로 인해 이전 GCC 버전에서 빌드가 실패했고, 커널 개발자인 Kees Cook과의 논쟁을 불러일으켰습니다. 이 사건은 출시되지 않은 컴파일러 버전을 사용하는 위험성과 개발자 간의 더 나은 소통 및 조율의 중요성을 보여줍니다. Torvalds는 최종적으로 패치를 되돌리고 경고를 일시적으로 비활성화했습니다.

Faasta: 초고속 WebAssembly FaaS 플랫폼

2025-04-25
Faasta: 초고속 WebAssembly FaaS 플랫폼

Faasta는 WebAssembly 기반의 최첨단 Function-as-a-Service(FaaS) 플랫폼으로, 1밀리초 미만의 초고속 콜드 스타트와 1KB 미만의 메모리 오버헤드를 자랑합니다. WASI P2와 WASIHTTP를 활용하여 고성능 HTTP 요청 처리 및 안전한 함수 격리를 제공합니다. Faasta는 자체 호스팅이 가능하므로 어디서든지 자체 인스턴스를 실행할 수 있습니다. 현재는 실험 단계이지만 faasta.xyz에서 무료 호스팅 인스턴스를 제공하고 있습니다.

개발

Kafka의 미래: 파티션을 넘어 더욱 강력한 메시지 큐로

2025-04-25

이 글에서는 Kafka의 미래 개선 방향을 논하며, 핵심은 파티션 기반 접근 방식에서 키 중심 접근 방식으로 전환하는 것입니다. 이를 통해 더욱 효율적인 데이터 접근 및 재생, 동적 소비자 확장이 가능해지고 헤드 오브 라인 블로킹 문제도 해결됩니다. 또한, 토픽 계층 구조, 동시성 제어, 브로커 측 스키마 지원, 확장성, 동기 커밋 콜백, 스냅샷 기능, 다중 테넌시 지원 등의 기능을 제안하여 Kafka의 성능, 안정성, 사용 편의성을 향상시키고 현대적인 데이터 애플리케이션에 더욱 적합하게 만들고자 합니다.

개발 메시지 큐

Git 커밋 서명: 기존 방식의 한계와 미래 전망

2025-04-25

이 글에서는 Git 커밋 서명의 현황과 과제를 살펴봅니다. GPG 서명과 같은 기존 방식은 키 관리의 복잡성과 장기간 유지되는 ID와 관련된 위험에 직면합니다. 저자는 GitHub 및 GitLab과 같은 플랫폼에서 GPG, SSH 및 S/MIME 서명의 결점을 분석하고 Sigstore의 Gitsign 및 OpenPubkey와 같은 새로운 솔루션을 소개합니다. 이러한 솔루션은 단기 ID 및 투명성 로그를 활용하여 보안을 강화하지만 현재로서는 제한 사항이 있습니다. 저자는 최종적으로 Sigstore 솔루션이 성숙할 때까지 SSH 키 관리 및 브랜치 보호 규칙을 우선시할 것을 제안합니다.

개발

관측 가능성 2.0: 3가지 기둥을 넘어 광범위한 이벤트 채택으로

2025-04-25
관측 가능성 2.0: 3가지 기둥을 넘어 광범위한 이벤트 채택으로

Honeycomb의 Charity Majors는 기존의 '메트릭, 로그, 추적' 패러다임에서 진화한 '관측 가능성 2.0'이라는 개념을 도입했습니다. 관측 가능성 2.0의 핵심은 풍부한 컨텍스트를 포함하는 고카디널리티, 고차원 이벤트 데이터인 '광범위한 이벤트'를 단일 진실 소스로 채택하는 것입니다. 이를 통해 메트릭, 로그, 추적을 소급적으로 동적으로 유도하여 데이터 사일로 및 사전 집계의 제한과 같은 문제를 해결할 수 있습니다. 그러나 이러한 전환은 이벤트 생성, 데이터 전송, 스토리지 및 쿼리 처리에 어려움을 안겨줍니다. 오픈소스 분석 관측 가능성 데이터베이스인 GreptimeDB는 이러한 어려움을 극복하기 위해 노력하고 있습니다. OpenTelemetry 형식을 지원하며, 내장 변환 엔진, 고 처리량 실시간 데이터 수집, 실시간 쿼리 API 및 물질화된 뷰와 같은 기능을 통해 관측 가능성 2.0을 위한 강력한 인프라를 제공합니다.

Swift 컨테이너 플러그인: 손쉽게 컨테이너 이미지 빌드 및 게시

2025-04-25
Swift 컨테이너 플러그인: 손쉽게 컨테이너 이미지 빌드 및 게시

Swift 컨테이너 플러그인은 Swift Package Manager를 사용하여 Swift 서버의 컨테이너 이미지 빌드 및 게시를 간소화합니다. 몇 가지 명령어로 Swift 애플리케이션을 컨테이너 이미지로 패키징하고 레지스트리에 푸시하여 컨테이너 기반 클라우드 환경이나 로컬에서 실행할 수 있습니다. macOS 및 Linux를 지원하며 Swift 6.0 이상이 필요합니다.

개발

PATH는 시스템 콜이어야 한다

2025-04-25

Emacs와 bash는 시작 시 PATH 환경 변수의 각 디렉토리를 순차적으로 탐색하여 대상 파일의 존재 여부를 하나씩 확인하는 비효율적인 방법으로 설정 파일을 검색합니다. 이 글에서는 이러한 비효율적인 검색 메커니즘을 살펴보고, strace 도구를 사용하여 Emacs와 bash의 시스템 콜을 추적하여 많은 fstatat 콜을 보여줍니다. 저자는 이 검색이 반복적인 시도 대신 데이터베이스 쿼리처럼 일치하는 파일을 직접 반환하도록 운영 체제 또는 파일 시스템에 의해 최적화되어야 한다고 주장합니다. Python 구현은 비교적 효율적이지만 단점도 있습니다. 저자는 시스템 콜과 네트워크 왕복 횟수를 줄이기 위해 모든 가능한 파일 이름과 디렉토리 목록을 운영 체제에 제공하는 개선 방안을 제시합니다.

개발

마이크로소프트 C/C++ 확장 기능, VS Code 파생 제품에서 작동하지 않아 독과점 우려

2025-04-24
마이크로소프트 C/C++ 확장 기능, VS Code 파생 제품에서 작동하지 않아 독과점 우려

마이크로소프트가 최근 업데이트한 Visual Studio Code의 C/C++ 확장 기능이 VS Codium 및 Cursor와 같은 파생 제품과 호환되지 않아 개발자들의 분노를 사고 있습니다. 이는 마이크로소프트가 자사 제품 외에서는 확장 기능 사용을 제한하면서 동시에 자체 AI 코딩 어시스턴트인 Copilot을 홍보하고 있기 때문에 반경쟁적이라고 여겨집니다. 개발자들은 Copilot 번들링, Cursor와 같은 경쟁사 차단, 그리고 사용자를 AI 생태계에 묶어두려는 시도 등 불공정 경쟁을 이유로 미국 연방거래위원회에 불만을 제기했습니다. Cursor는 오픈소스 대안으로 전환하고 있다고 합니다.

개발

내 블로그 자동화: PKM부터 원클릭 게시까지

2025-04-24

Ryan West는 자신의 블로그 작성 및 게시 워크플로우를 자동화한 경험을 공유합니다. 그는 Obsidian을 개인 지식 관리(PKM)에 사용하여 고품질 정보를 Zotero에 정리한 다음 Obsidian을 통해 통합하고 콘텐츠를 만듭니다. 그는 Hugo를 사용하여 정적 웹사이트를 생성하고 사용자 정의 스크립트와 cron 작업을 통해 GitHub에 자동 배포하여 Obsidian의 Markdown 문서를 몇 분 안에 웹사이트에 게시합니다. 또한 그는 댓글 시스템으로 giscus를 사용하여 GitHub Discussions 기능을 활용하여 Reddit과 유사한 댓글 환경을 제공합니다.

arXivLabs: 커뮤니티와의 협업을 통한 실험

2025-04-24
arXivLabs: 커뮤니티와의 협업을 통한 실험

arXivLabs는 웹사이트에서 직접 새로운 arXiv 기능을 공동 개발하고 공유하기 위한 프레임워크입니다. 참여자들은 arXiv의 개방성, 커뮤니티, 우수성, 사용자 데이터 프라이버시라는 가치를 공유합니다. arXiv 커뮤니티를 개선할 아이디어가 있으신가요? arXivLabs에 대해 자세히 알아보세요.

개발

Infat: macOS용 선언적 파일 연결 관리 도구

2025-04-24
Infat: macOS용 선언적 파일 연결 관리 도구

Infat은 파일 유형 및 URL 스키마 연결을 선언적으로 관리하기 위한 강력한 macOS 기본 CLI 도구입니다. 기본 브라우저 또는 이미지 뷰어를 설정하기 위한 번거로운 하위 메뉴 탐색은 이제 그만입니다. 규칙을 한 번 설정하면 영구적으로 적용됩니다. Infat은 파일 확장자 또는 URL 스키마에 연결된 앱 목록 표시, 기본 애플리케이션 설정, TOML 구성 파일에서 연결 로드를 지원합니다. 간단하고 스크립팅이 가능하며, 파워 유저와 관리자에게 적합합니다.

개발 파일 연결

Zev: 자연어로 터미널 명령어 찾기

2025-04-24
Zev: 자연어로 터미널 명령어 찾기

Zev는 OpenAI API 기반으로 구축된 도구로, 자연어를 사용하여 터미널 명령어를 찾거나 기억할 수 있습니다. 예를 들어, "실행 중인 Python 프로세스 모두 표시"라고 입력하면 관련 명령어를 찾을 수 있습니다. Zev는 파일 작업, 시스템 정보, 네트워크 명령어, Git 작업 등 다양한 작업을 지원합니다. OpenAI API에 의존하지 않도록 Ollama를 로컬 대안으로 사용할 수도 있습니다. 이 프로젝트는 오픈소스이며, 기여를 환영합니다.

arXivLabs: 커뮤니티와의 협업을 통한 실험 프로젝트

2025-04-24
arXivLabs: 커뮤니티와의 협업을 통한 실험 프로젝트

arXivLabs는 arXiv의 새로운 기능을 웹사이트에서 직접 개발하고 공유할 수 있는 프레임워크입니다. 개방성, 커뮤니티, 우수성, 사용자 데이터 개인 정보 보호라는 arXiv의 가치를 공유하는 개인 및 조직과의 협업을 장려합니다. arXiv 커뮤니티를 개선할 아이디어가 있으십니까? arXivLabs를 살펴보세요.

개발

DSL을 사용한 로컬 우선 웹 애플리케이션의 효율적인 검색 시스템

2025-04-24
DSL을 사용한 로컬 우선 웹 애플리케이션의 효율적인 검색 시스템

이 문서는 도메인 특정 언어(DSL)를 사용하여 구축된 로컬 우선 웹 애플리케이션을 위한 효율적인 검색 시스템을 제시합니다. TypeScript 및 파서 조합기를 활용하여 강력하고 유지보수가 용이하며 확장 가능한 검색 엔진을 만듭니다. Issue 인터페이스와 파서를 정의하여 시스템은 DSL 쿼리를 구문 분석하고, 추상 구문 트리(AST)를 생성하고, 최종적으로 데이터 필터링을 위한 술어 함수를 생성합니다. 성능 테스트는 시스템이 수백만 개의 레코드를 효율적으로 처리할 수 있음을 보여줍니다. 이 문서에서는 인덱싱, 쿼리 최적화, 캐싱과 같은 성능 향상 방법도 다룹니다.

개발

패킹된 SIMD의 결함과 벡터 프로세서의 부상

2025-04-24

본 기사에서는 단일 명령어 다중 데이터(SIMD) 아키텍처의 고유한 결함, 즉 고정 레지스터 너비로 인한 확장성 문제, 파이프라이닝으로 인한 성능 병목 현상, 꼬리 처리 오버헤드에 대해 자세히 설명합니다. 이러한 제한은 대규모 데이터 세트 처리에서 SIMD의 효율성을 저해합니다. 본 기사에서는 SIMD와 벡터 프로세서(예: Cray-1, RISC-V RVV, ARM SVE)를 비교하여 후자가 유연한 벡터 길이와 하드웨어 수준의 꼬리 처리를 통해 SIMD의 단점을 극복합니다. 가상 벡터 방식(VVM)과 같은 대안적인 접근 방식도 탐구하여 데이터 처리 성능 향상을 위한 새로운 방향을 제시합니다.

Instant SQL: 지루한 쿼리 작성과 작별

2025-04-24
Instant SQL: 지루한 쿼리 작성과 작별

MotherDuck은 SQL 작성에 대한 혁신적인 방법인 Instant SQL을 출시했습니다. 이 새로운 기능은 사용자가 입력하는 동안 실시간으로 결과 집합을 업데이트하여 쿼리 작성 및 디버깅 속도를 획기적으로 높입니다. 더 이상 쿼리 실행을 기다릴 필요가 없습니다. Instant SQL은 대기 시간이 없는 피드백을 제공합니다. 실시간 결과 미리보기, CTE 검사 및 편집, 복잡한 열 식의 간편한 분해를 통해 오랫동안 지속되어 온 느리고 지루한 SQL 작성 문제를 해결합니다. DuckDB가 쿼리할 수 있는 모든 데이터 소스를 지원하며 AI 기반 제안과 원활하게 통합됩니다. 이 획기적인 기술은 DuckDB의 속도, AST 파싱, 정확한 커서 매핑, 지능형 캐싱을 활용합니다.

개발

Colanode: 오픈소스 자체 호스팅 협업 작업 공간

2025-04-24
Colanode: 오픈소스 자체 호스팅 협업 작업 공간

Colanode는 자체 호스팅이 가능한 오픈소스 협업 작업 공간입니다. 데이터 개인 정보 보호 및 제어를 우선시하며 로컬 우선 접근 방식을 사용합니다. 팀은 온라인 또는 오프라인으로 커뮤니케이션, 구성 및 프로젝트 관리를 수행할 수 있습니다. 실시간 채팅, 리치 텍스트 페이지 편집기, 사용자 지정 가능한 데이터베이스 및 파일 관리 기능을 제공합니다.

개발

1991년 GPLv2 라이선스 요청: 우편과 종이 사본에 대한 향수 어린 이야기

2025-04-24
1991년 GPLv2 라이선스 요청: 우편과 종이 사본에 대한 향수 어린 이야기

오픈소스 소프트웨어 작업 중에 저자는 GPLv2 라이선스 고지에서 URL 대신 실제 주소가 있는 것을 발견하고 호기심을 느꼈습니다. 이는 1991년 인터넷이 보급되기 전 소프트웨어 배포 방식과 사람들이 우편으로 GPL 라이선스 전문을 어떻게 얻었는지에 대한 저자의 고찰로 이어졌습니다. 저자는 직접 시도해 보기로 결정하고 해당 주소로 편지를 보내 GPLv2 라이선스를 요청했습니다. 그리고 답장을 받았지만, GPLv3 버전이었습니다. 이 경험은 향수를 불러일으키며 서로 다른 시대의 정보 접근 방식의 차이를 보여줍니다.

개발

Fedify를 사용하여 자신만의 연합 마이크로블로그를 구축하는 방법

2025-04-24
Fedify를 사용하여 자신만의 연합 마이크로블로그를 구축하는 방법

이 튜토리얼에서는 Fedify 프레임워크를 사용하여 ActivityPub 프로토콜을 준수하는 작은 규모의 연합 마이크로블로그를 구축하는 방법을 안내합니다. TypeScript, JSX 또는 ActivityPub에 대한 사전 지식이 필요하지 않습니다. 계정 생성, 데이터베이스 설정, 다른 서버(Mastodon 포함)와의 상호 작용, 팔로우, 게시물 작성 및 타임라인 표시 등의 기능을 구현하는 방법을 배우게 됩니다. 이 튜토리얼에서는 자세한 코드 예제와 단계별 지침, 그리고 TypeScript와 JSX에 대한 간결한 설명을 제공합니다. 최종적으로 fediverse와 통신할 수 있는 작동하는 단일 사용자 마이크로블로그를 만들 수 있습니다.

개발 연합 소셜

시니어 백엔드 엔지니어 (Ruby/Go, Kubernetes) 채용 - 원격 근무

2025-04-24
시니어 백엔드 엔지니어 (Ruby/Go, Kubernetes) 채용 - 원격 근무

모바일 어트리뷰션 전문 기업에서 Ruby(Rails/Sinatra) 및 Go 경험이 풍부하고 Kubernetes에 능숙한 시니어 백엔드 엔지니어를 채용합니다. 고처리량 분산 시스템 개발 및 유지보수 경험이 많은 분을 우대합니다. 원격 근무, 협업적인 팀 분위기, 데이터 중심의 모바일 마케팅 의사결정을 중요시합니다.

개발

Vim으로 생산성 극대화하기: 한 개발자의 경험담

2025-04-24
Vim으로 생산성 극대화하기: 한 개발자의 경험담

경험 많은 개발자가 기존 텍스트 에디터에서 Vim으로 전환한 경험을 공유합니다. 처음에는 Vim의 단축키에 어려움을 느꼈지만, 효율적인 키 바인딩 시스템인 'Vim 언어'를 깨닫고 생산성이 획기적으로 향상되었습니다. Vim 모션과 명령어를 숙달하여 정확하고 빠른 텍스트 편집이 가능해졌으며, 이러한 효율성 향상은 글쓰기와 웹 브라우징에도 확장되었습니다. 가파른 학습 곡선을 인정하지만, Vim 습득의 이점은 매우 크다고 주장합니다.

개발

Qodo: AI 기반 다중 에이전트 코드 무결성 플랫폼

2025-04-24
Qodo: AI 기반 다중 에이전트 코드 무결성 플랫폼

NVIDIA Inception 프로그램 회원사인 Qodo는 AI 기반 코드 작성, 테스트, 검토 에이전트를 통해 소프트웨어 품질 워크플로를 개선하고 자동화하는 다중 에이전트 코드 무결성 플랫폼을 개발했습니다. Qodo의 핵심은 NVIDIA DGX에서 훈련된 최첨단 코드 임베딩 모델과 고급 검색 증강 생성(RAG)을 기반으로 하는 심층적 컨텍스트 인식 AI 에이전트입니다. 이를 통해 에이전트는 코드의 의도, 패턴, 광범위한 구조를 이해하고 더욱 정확한 코드 제안, 신뢰할 수 있는 테스트, 통찰력 있는 코드 검토를 생성할 수 있습니다. 이를 달성하기 위해 Qodo는 최신 인덱스를 지속적으로 유지 관리하는 강력한 파이프라인을 구축했으며, LLM 성능에 영향을 미칠 수 있는 잘못되거나 불완전한 코드 세그먼트로 인한 문제를 방지하기 위해 언어별 정적 분석을 사용하여 대규모 코드 파일을 청크화합니다. NVIDIA와의 협업을 통해 Qodo의 솔루션은 NVIDIA의 내부 RAG 시스템(Genie)의 코드 검색 정확도를 크게 향상시켰으며, 최종적으로 NVIDIA의 내부 Slack 시스템에 통합되어 개발자에게 더욱 정확하고 자세한 코드 정보를 제공합니다.

도구의 딜레마: 프로그래머의 윤리적 갈등

2025-04-24

저자는 프로그래머로, 비윤리적인 기업의 기술을 사용하는 것에 불편함을 느껴 리눅스나 종이와 펜을 이용한 시스템을 반복적으로 시도합니다. 개인적인 행동의 무력함을 인정하면서도, 자유 소프트웨어 사용이나 컴퓨터 사용 감소를 통해 연루를 줄이려고 노력합니다. 하지만 결국 편리함의 유혹에 굴복하고, 진정한 현실 변화를 위해서는 강력한 정부 규제가 필요하다는 결론을 내립니다.

CocoIndex: 데이터 처리를 간소화하는 오픈소스 데이터 인덱싱 엔진

2025-04-24
CocoIndex: 데이터 처리를 간소화하는 오픈소스 데이터 인덱싱 엔진

CocoIndex는 사용자 정의 변환 로직과 증분 업데이트를 지원하고 데이터 인덱싱에 특화된 세계 최초의 오픈소스 엔진입니다. 사용자는 변환을 선언하고 CocoIndex는 인덱스를 생성하고 유지 관리하며, 소스 업데이트 시 최소한의 계산으로 파생 인덱스를 최신 상태로 유지합니다. 설명서, 빠른 시작 안내 및 비디오 자습서를 사용할 수 있습니다. Python 라이브러리 설치와 Docker Compose를 사용한 Postgres 데이터베이스 시작을 지원합니다. 사용자는 텍스트를 청크로 분할하고 벡터에 임베딩하고 벡터 인덱스로 내보내는 등 인덱싱 흐름을 정의하여 데이터를 쉽게 인덱싱할 수 있습니다. 예제와 데모가 제공되며 커뮤니티의 기여(코드 개선, 설명서 업데이트, 문제 보고, 기능 요청, Discord 토론)를 환영합니다.

TacOS: DOOM을 구동하는 자작 OS

2025-04-24
TacOS: DOOM을 구동하는 자작 OS

개발자가 C 언어와 어셈블리 언어로 작성된 커널을 가진 오픈소스 OS인 TacOS를 공개했습니다. 이 Unix 계열 커널은 VFS, 스케줄러, TempFS, 장치 드라이버, 컨텍스트 스위칭, 가상 메모리 관리, 물리적 페이지 프레임 할당 등의 기능을 갖추고 있습니다. 놀랍게도 DOOM을 비롯한 작은 사용자 공간 프로그램을 실행할 수 있습니다. 실제 하드웨어(개발자의 노트북에서 테스트됨)와 QEMU 에뮬레이터에서 작동합니다. 아직 개발 중이며 알려진 버그가 있지만, TacOS는 매력적인 취미 프로젝트입니다.

개발

CubeCL: Rust을 위한 멀티플랫폼 고성능 컴퓨팅 언어 확장

2025-04-24
CubeCL: Rust을 위한 멀티플랫폼 고성능 컴퓨팅 언어 확장

CubeCL은 Rust를 사용하여 GPU 컴퓨팅 커널을 작성할 수 있도록 하는 획기적인 Rust 언어 확장입니다. 유지보수성, 유연성, 효율성이 뛰어난 컴퓨팅 커널을 개발하기 위해 제로 코스트 추상화를 활용합니다. WGPU, CUDA, ROCm/HIP 런타임(CPU 런타임도 계획 중)을 지원하며, 자동 벡터화, 컴파일 시 계산, 자동 튜닝 등의 기능을 통해 고성능 커널 개발 및 크로스 플랫폼 이식성을 간소화합니다. 고유한 2단계 프로세스(구문 분석 및 확장)를 통해 컴파일 시 최적화 및 Rust와의 원활한 통합을 실현합니다. 현재 알파 버전이지만, Rust에서의 고성능 컴퓨팅의 초석이 될 큰 가능성을 지니고 있습니다.

개발
1 2 104 105 106 108 110 111 112 214 215