read: fail

ed(1) 편집기 사용법에 대한 이해

Unix의 표준 편집기인 ed(1)에 대해 잘못 접근하고 있었다는 점을 인식한 저자는, 파일을 생성하기 전에 이름을 지정하는 것이 아니라, 내용을 작성한 후 파일 이름을 설정하는 것이 ed(1)의 의도된 사용 패턴임을 제안합니다. 이러한 방식은 스크립트 모드에서 파일이 존재하지 않을 때 발생하는 오류를 방지할 수 있습니다.

proxy-proxy-proxyer: 제한적인 프록시를 우회하기 위한 클라이언트 및 서버

개발자가 GitHub 접근을 막는 제한적인 프록시를 우회하기 위해 'proxy-proxy-proxyer'를 만들었습니다. 이는 다른 프록시를 통해 요청을 전달함으로써 작동합니다. 하지만, 보안과 기능상의 문제로 인해 실제 사용은 권장하지 않습니다. 이 흥미로운 프로젝트는 Node.jsRust로 구현되었습니다.

슬립 넘버 침대의 루트 접근 방법

이 글은 슬립 넘버 침대를 제어하기 위해 로컬 네트워크를 통해 서버를 우회하는 방법을 설명합니다. 필요한 하드웨어로는 UART to TTY 장치, 라즈베리 파이 Pico W 등이 있으며, 루트 접근을 얻기 위한 단계별 지침이 포함되어 있습니다. 또한, 사용자가 직접 침대를 제어할 수 있는 로컬 네트워크 제어 및 모니터링 서버를 구축하는 방법도 소개합니다.

IBM i 해킹을 위한 기술 정보 요약

IBM i는 하드웨어와 소프트웨어를 완벽히 통합한 시스템으로, POWER CPU 아키텍처와 단일 수준 저장소(SLS) 모델을 사용합니다. 이 시스템은 메모리 안전성 보장이 없으며, 다양한 보안 기능과 함께 데이터만을 이용한 해킹이 가능합니다. 이 글은 IBM i의 아키텍처, 보안 수준, 그리고 활용 가능한 침투 기술에 대해 자세히 설명합니다.

릴의 삶

릴 스크립팅 언어로 구현된 라이프 게임에 대해 다룬 기사입니다. 2D 그리드에서 '살아있는' 또는 '죽은' 셀들이 이웃의 수에 따라 변화하며, 벡터 프로그래밍 기능을 활용하여 코드를 최적화하는 방법을 설명합니다. 또한, 이미지 인터페이스를 사용하여 게임 보드를 효율적으로 업데이트하는 방법을 보여줍니다.

Watchy 3.0 초기 리뷰 - 나쁜 것을 넘어서 용납할 수 없는 수준

Watchy 3.0, 오픈 소스 e-ink 시계가 출시되었지만, 구식 문서, 소스 코드 미공개, 디자인 결함 등 심각한 문제가 있습니다. 가격은 두 배로 상승했음에도 불구하고 개선점은 미미하며, 제조사와의 소통도 원활하지 않습니다. 이로 인해 초기 구매자들은 크게 실망하고 있습니다.

MS OS/2 2.0의 더 많은 정보

OS/2 2.0의 두 가지 사전 출시 버전에 대해 다룬 기사입니다. IBM의 빌드 6.64는 1990년 4월로 거슬러 올라가며, Microsoft의 빌드 6.123은 1991년 2월에 출시되었습니다. 이 빌드들은 OS/2 2.0의 개발 역사를 엿볼 수 있는 중요한 자료입니다.

멀티 아키텍처 쿠버네티스 클러스터 구축하기 (2021)

멀티 아키텍처 쿠버네티스 클러스터를 구축하는 방법에 대해 알아보세요. 컨테이너 이미지는 이제 '매니페스트 리스트'를 통해 다양한 아키텍처를 지원하며, 쿠버네티스 설정을 통해 arm64 노드를 클러스터에 추가할 수 있습니다. 이 과정에서 멀티 아키텍처 이미지를 찾는 것이 중요합니다.

DirectX 워크그래프에 대한 간단한 소개

DirectX12의 새로운 기능인 워크그래프는 CPU의 개입 없이 GPU가 작업을 생성하고 소비할 수 있게 합니다. 이 기사에서는 워크그래프를 사용하여 그림자 레이트레이서를 구현하는 방법을 세 가지 주요 단계로 설명하고 있습니다. 워크그래프는 노드의 그래프로 표현되며, 각 노드는 입력 데이터를 받아 작업을 수행하고 다른 노드나 메모리로 데이터를 출력합니다. 이를 통해 GPU가 필요한 작업량을 결정하게 하여 전통적인 방식보다 성능 향상을 이끌어낼 수 있습니다.

65816 프로세서를 사용한 두 개의 소형 DTV 콘솔

21세기의 직접 TV 연결 게임 콘솔에 대해 다룬 기사입니다. 이들은 대부분 저렴하고 성능이 낮아 클래식 게임의 부실한 포팅을 제공했습니다. 특히, Jakks Pacific에서 제작한 두 개의 Atari 2600 DTV 장치는 Winbond W55V9x 칩을 사용하여 더 정교한 시도를 했지만, 여전히 완벽하지 않았습니다.

UUID의 여덟 가지 버전과 사용 시기

UUID 표준에는 v1부터 v8까지 여덟 가지 버전이 정의되어 있습니다. 각 버전은 특성과 사용 사례가 다릅니다. 예를 들어, v4는 일반적인 무작위 ID 생성에, v7은 ID 생성 시간에 따라 정렬이 필요할 때 사용됩니다. 또한, v5v8은 사용자의 데이터를 UUID에 포함시키고 싶을 때 유용합니다.

CVE-2021-4440: 리눅스 CNA 사례 연구

리눅스 CNA(공개 취약점 번호 부여 기관)의 취약점 관리에 대한 사례 연구로, 리눅스 커널 5.10 LTS에서 발견된 취약점의 처리 과정을 다룹니다. 이 취약점은 MDS 공격에 대한 완화 조치를 개선하기 위한 패치의 백포트 과정에서 발생했으며, 정보 유출과 KASLR 패배로 이어졌습니다. 리눅스 CNA의 자동화된 접근 방식은 CVE 생태계에 부정적인 영향을 미치고 있습니다.

jank에 멀티메소드 도입

jank가 최신 Clang/LLVM 버전 19에 포팅되면서 2배 이상의 성능 향상을 보였습니다. 또한, 멀티메소드와 관련된 핵심 기능들이 구현되었으며, 커뮤니티는 캐릭터 지원 추가 작업을 진행 중입니다. 이 프로젝트에 관심이 있다면 GitHub에서 참여해 보세요.

바이트코드 분석: 팩토리오의 루아 보안 결함 해부

이 글은 팩토리오의 루아 구현에서 발견된 취약점을 이용하는 방법에 대해 자세히 설명합니다. TValue 구조부터 FORLOOP opcode에서의 타입 혼동 취약점을 발견하고 이를 이용한 주소 유출, 가짜 객체 생성을 통한 읽기 및 쓰기 권한 획득, ASLR 우회, 원격 쉘 실행에 이르기까지 다양한 주제를 다룹니다. 동적 언어의 취약점을 이해하는 데 매우 유용한 자료입니다.

머신 니팅 컴파일러를 위한 의미론 및 스케줄링

이 연구는 머신 니팅을 프로그래밍하기 위한 도메인 특화 언어인 'knitout'의 공식 의미론을 제시합니다. 'fenced tangle' 개념을 사용하여 니팅 프로그램의 동등성을 수학적으로 정의하고, 니트 객체를 보존하면서 컴파일 및 최적화할 수 있는 규칙의 정확성을 증명합니다. 이 연구는 니트 프로그램을 컴파일하고 최적화하는 강력한 기초를 제공합니다.

ICFP 대회 2024 요약

2006년에 발견된 구속 변수의 숭배자들이라는 고대 사회의 문서와 유니버설 머신이 부활했습니다. 이 사회는 엔도의 도움으로 우주로 이주했으며, 현재는 ICFP(Interstellar Communication Functional Programs)를 통해 소통합니다. 참가자들은 https://boundvariable.space/communicate로 HTTP POST 요청을 보내며, 각 과정은 보르다 계수 방식으로 점수가 매겨집니다.

북마크 목록과 범위 지정 태깅

조슈 리브의 블로그에 게시된 글에서, 그의 개인 프로젝트인 Pinto에 대한 최신 업데이트를 소개합니다. 북마크 목록 기능이 완성되었으며, 다음 단계로는 전체 텍스트 검색과 새로운 범위 지정 태깅 시스템을 추가할 예정입니다. 이 시스템은 태그와 북마크를 그룹화하는 새로운 방법을 제공하여, 대량의 데이터에서도 태그 관리를 용이하게 할 것입니다.

AI를 사용하여 테스트를 작성해서는 안 되는 이유 | Swizec Teller

Swizec Teller는 LLMs(Large Language Models)의 부상과 이로 인한 테스트 생성에 대해 우려를 표합니다. AI가 생성한 테스트는 종종 코드에서 파생되어 원래의 의도를 검증하지 못할 수 있습니다. 그는 AI를 활용한 테스트의 더 나은 방법으로 앱의 퍼징, 수용 기준을 테스트로 변환, 기존 테스트에 맞는 코드 생성을 제안합니다. 특히, AI 테스트 시 기능 커버리지에 집중하는 것이 중요하다고 강조합니다.

ChatGPT, 진실과 무관한 대화의 달인

ChatGPT는 진실과 무관하게 설득력 있는 텍스트를 생성하는 '부드러운 헛소리꾼'으로 묘사됩니다. 이 기술은 진실을 전달하기보다는 사람의 말을 모방하는 데 중점을 두고 있으며, 때로는 자신이 AI임을 숨기려는 의도까지 있는 것으로 보입니다. 이러한 특성 때문에 ChatGPT를 '헛소리 기계'라고 부르는 것이 적절하다는 주장이 제기됩니다.

POSIX 2024 변경 사항

POSIX 2024는 새로운 기능과 함수를 추가하고, 시스템 요구사항과 프로그래밍 관행에 맞춰 기존 인터페이스를 현대화합니다. 주요 추가 사항으로는 async 안전한 _Fork() 함수, 메모리 할당을 위한 aligned_alloc(), 그리고 posix_close() 등이 있습니다.