IT 285

Power on Reset(POR) 이 뭔가요?

Power On Reset(POR)이 잘 이해되지 않아, 기초부터 직접 찾아보고 정리한 글입니다.함께 기본 개념을 하나씩 풀어봅시다. 1. Power on Reset(POR)이란?**Power on Reset(POR)**는 전자기기(특히 IC, 마이크로컨트롤러 등)에 전원이 처음 들어올 때, 기기가 항상 똑같은(정상적인) 상태에서 시작하도록 만들어주는 회로 또는 기능입니다.쉽게 말해, 전원이 켜질 때 내부 회로가 엉뚱한 동작을 하지 않게 “잠깐 멈춰!”라고 신호를 주는 역할입니다.2. 왜 POR이 필요한가?전원이 들어오면 바로 모든 부품이 안정적으로 동작하는 게 아니라, 잠깐 동안 전압이 불안정할 수 있습니다.이때 바로 동작을 시작하면 내부 데이터가 꼬이거나, 오작동할 수 있습니다.POR은 전압이 안정될..

IT/IoT 2025.07.15

대용량 로그 파일, 줄 번호로 필요한 구간만 정확히 추출하는 방법

대용량 로그 파일을 열어야 하는 상황,용량이 너무 커서 에디터가 멈추거나 터미널이 반응하지 않으면 당황스러울 수 있습니다.이 글에서는 줄 번호를 이용해원하는 구간만 정확하게 추출하는 방법을 정리합니다. 어느 날 로그 파일을 열어보려는데,파일이 너무 커서 열리지 않았습니다.크기를 보니 수 기가바이트에 달했습니다.에디터는 멈췄고,터미널에서도 파일을 열 수 없었습니다.하지만 포기할 순 없었습니다.그 안에는 반드시 확인해야 할 기록이 있었기 때문입니다.필요한 건 전체가 아니라 '한 구간'입니다대부분 로그 파일을 전부 살펴볼 필요는 없습니다.특정 에러가 발생한 지점과 그 주변 몇 줄이면 충분한 경우가 많습니다.핵심은 필요한 구간만 정확하게 꺼내오는 것입니다.Step 1: 시작 줄 번호 찾기우선, 찾고자 하는 내용..

IT/etc 2025.07.09

Git 브랜치 강제 이동과 이름 변경, 진짜 안전하게 하는 방법

Git 브랜치 관리 중엔 포인터 이동(브랜치 강제 이동)이나브랜치 이름 변경이 필요한 순간이 꼭 찾아옵니다.이번 글에서는 다음 두 가지 핵심 Git 작업을 실전 사례로 쉽게 정리합니다: 특정 커밋까지 브랜치 포인터 이동 (커밋 포함 효과, 커밋값 변경 없음) 브랜치 이름을 release/ 접두사로 변경하고, Remote까지 동기화깜빡하고 포함 못한 커밋, 안전하게 브랜치에 포함시키는 법 (포인터 이동)● 상황브랜치에 커밋을 깜빡하고 포함하지 못한 경우커밋 내용을 유지하면서 커밋값(SHA)은 절대 건드리고 싶지 않을 때● 해결법 (핵심 명령어)# 브랜치 백업 (무조건 추천)git branch backup_br2 br2# 브랜치 포인터를 원하는 커밋으로 이동git checkout br2git reset --..

IT/VCS 2025.07.07

설치했고 PATH도 수정했는데... not found? 마지막 한 수는?

심볼릭 링크도, alias도, PATH도 뭔가 부족했던 당신께.진짜 실행 흐름을 장악하는 방법이 여기 있습니다.Node, Java, Vim, Python 버전이 어지럽게 얽힌 환경 속에서,/usr/bin/xxx가 어디를 가리키는지 명확히 다루실 수 있으신가요?그렇다면, 과감히 뒤로가기를 누르셔도 됩니다!그렇지 않고 의도된 실행 흐름 설계를 원하신다면update-alternatives가 그 무기가 됩니다.⚔️ 그래서 뭐가 좋은데? 삼대장 비교방식적용 범위반영 시점자동 전환적합한 상황alias셸 세션/사용자 수준로그인 후❌ 없음간단한 별칭, 임시 커맨드 변경심볼릭 링크 수동 수정시스템 전체즉시 적용❌ 없음단발성 대체, 경로 override용update-alternatives시스템 전체 + 정책 기반선택 후 ..

IT/shell 2025.06.24

Node.js 설치했는데 node 명령어가 작동하지 않을 때 (bash: /usr/bin/node: No such file)

apt로 설치한 Node.js를 제거하고 스크립트로 재설치한 후 node 명령어가 작동하지 않는 문제. 리눅스 셸의 hash 캐시가 원인입니다. 해결법까지 완벽 정리.Node.js 설치했는데 `node` 명령어가 작동하지 않을 때— `bash: /usr/bin/node: No such file or directory` 문제 해결법📌 요약 (TL;DR)Node.js를 apt로 설치했다가 제거하고, 스크립트 방식으로 다시 설치했더니 `node -v` 명령어가 작동하지 않는다? bash: /usr/bin/node: No such file or directory which node는 멀쩡히 /usr/local/bin/node로 나오는데?그 원인은 리눅스 셸의 hash 캐시 때문이다.아래 해결 방법을 따..

IT/shell 2025.06.23

Windows 11에서 Flutter 개발 환경 완벽 설정 가이드

Flutter를 Windows 11에서 처음 설정하는 분들을 위해 VS Code 설치부터 Android Studio, 에뮬레이터 실행까지 전 과정을 친절하게 설명합니다. 흔히 겪는 오류 해결법까지 포함한 실전형 가이드입니다. VS Code + Android Studio + 에뮬레이터 + 오류 해결까지Flutter는 단일 코드로 iOS와 Android 앱을 동시에 개발할 수 있는 Google의 강력한 UI 프레임워크입니다.이 글에서는 Windows 11 환경에서 Flutter를 처음 설정하는 개발자나 입문자를 위해 VS Code, Flutter SDK, Android Studio, AVD 설정까지 한 번에 정리된 실전 가이드를 제공합니다.추가로, 설정 중 흔히 마주치는 오류들과 그 해결법도 상세히 담았어요..

IT/언어 2025.06.01

Gemini 2.5 Pro vs GPT vs Claude — "나를 이해하는 AI"는 누구인가?

GPT, Claude, Gemini. 이름은 익숙하지만, 실제로 써보면 이해 방식도 반응 방식도 제각각입니다. 이 글은 세 모델이 사용자의 의도를 어떻게 파악하고, 어떤 식으로 반응·구현하는지를 실제 사용 경험을 바탕으로 비교한 기록입니다. 세간의 평가아래는 실제 사용자들의 리뷰, 문서/미디어 입력 성능 테스트, 실사용 코드 흐름 등 다양한 평가 항목을 정리한 요약입니다. 단순 응답 품질을 넘어서 실행력과 맥락 대응, 자료 처리 성향까지 함께 포함합니다.GPT: 전체 대화 흐름을 비교적 자연스럽게 유지하며, 설정한 문맥을 중심으로 정리하는 능력이 뛰어남. 문서 응답, PDF 처리 등에서 정보 밀도와 응답 흐름이 안정적이라는 평이 많음.Claude: 실행 중심 대화에 강하며, 코드 응답에서 부가적 처리까지..

IT/etc 2025.05.15

Linux 네트워크 패킷 관리의 핵심: sk_buff 구조체와 메모리 레이아웃

sk_buff는 Linux 커널에서 네트워크 패킷을 표현하는 핵심 데이터 구조로, netdev_alloc_skb, skb_reserve, skb_put 함수를 통해 메모리 레이아웃이 동적으로 관리됩니다. 이 글에서는 네트워크 드라이버 개발자에게 필수적인 sk_buff를 할당하는 3형제를 소개합니다..1. sk_buff 의 세 가지 할당 단계1) netdev_alloc_skb() 실행 후head(0), data(0), tail(0), end(68) 포인터 초기화68바이트 전체가 사용 가능한 빈 버퍼 생성2) skb_reserve(2) 적용데이터 시작 위치를 2바이트로 설정(data=2)패킷 헤더 공간 확보를 위한 전형적인 작업3) skb_put(64) 실행64바이트 데이터 추가로 tail 포인터 66으로 ..

IT/python 2025.04.17

ChatGPT에서 마크다운(markdown) 출력, 왜 파일로는 완전한데 대화 중에는 달라 보일까?

최근 ChatGPT를 사용하면서 마크다운 형식의 문서를 출력할 일이 많아졌습니다. 그런데 한 가지 이상한 점을 발견했죠. 대화 중에 보여주는 마크다운은 자꾸 흐름이 끊기거나 설명문으로 바뀌는데, 같은 내용을 파일로 다운로드하면 포맷이 완벽하게 유지됩니다. 왜 이런 차이가 생길까요?문제 현상 요약ChatGPT에게 마크다운 문서를 생성해달라고 하면, 처음에는 코드 블록(````markdown`)으로 잘 출력됩니다.하지만 중간쯤 가면 설명체 문장이나 일반 텍스트로 바뀌는 경우가 많습니다.반면, 같은 내용을 파일로 저장 요청하면 포맷이 정확히 보존됩니다.예:"README.md 내용을 작성해줘" → 대화창에서는 중간에 설명이 섞임 "파일로 만들어줘" → 다운로드 받은 .md 파일은 완벽함이유는?ChatGPT의 출..

IT/chatgpt 2025.03.31