[TIL250710] 너 주석아니였어 ? Shebang?
·
크래프톤정글이야기/TIL - WIL
(쇼뱅 아님 셔뱅임..)bash: ./driver.sh: cannot execute: required file not found이라는이상한 오류가 떴다. 분명히 파일도 있고, 실행 권한도 있는데도 실행이 안 되는 이상한 상황.삽질 과정셔뱅(Shebang) 확인 요청을 받음→ 경로 바꿈..→ 경로 지정이 잘못 되어 있을 수도 있어!#!/usr/bin/env python3그래도 안 됨 → 줄바꿈 형식(CRLF vs LF) 의심3.정상 실행됨.→ 원인은 Windows에서 복사된 파일의 CRLF 줄바꿈 형식이 bash에서 인터프리터 해석을 망가뜨렸기 때문.그래서? Shebang(셔뱅)이란 뭔데?#!/usr/bin/env bash이건 이렇게 해석됩니다:"사용자 환경(PATH)에 등록된 폴더들 중에서 bash를 찾..
WIL – Proxy Lab에서 nop-server.py가 실행되지 않았던 이유와 해결
·
크래프톤정글이야기/TIL - WIL
What was the problem?CS:APP Proxy Lab 과제를 진행하며 ./driver.sh를 실행하는 도중,Concurrency 테스트에서 다음과 같은 에러가 발생했다. ./nop-server.py: cannot execute: required file not found파일은 존재하고 ls 명령으로도 확인되는데, 실행이 되지 않아 당황스러웠다.단순한 파일 누락이 아니라, 더 깊은 시스템 권한과 인터프리터 문제였다.Why did it happen?문제 원인은 아래 3가지 중 하나 또는 조합이었다:1. 잘못된 shebang 경로nop-server.py의 첫 줄이 다음과 같았다:#!/usr/bin/python3하지만 내 환경에는 /usr/bin/python3이 존재하지 않았다.이 경우 bash는..
[WIL 250703] 묵시적 가용 리스트의 구조적 한계와 성능 실험
·
크래프톤정글이야기/TIL - WIL
🔎 묵시적 할당기 보러가기👉 Malloc 파헤치기 : 묵시적할당기👉 Malloc 파헤치기 : 묵시적할당기 2 이번 Malloc Lab을 진행하면서 직접 mm.c 파일을 구현해보고, 묵시적 가용 리스트(Implicit Free List) 기반의 동적 메모리 할당자가 어떤 구조적 제약을 갖는지, 또 그 제약이 실제 성능에 어떤 영향을 미치는지를 실험적으로 확인해봤습니다.묵시적 리스트 구조의 작동 방식묵시적 리스트는 모든 블록이 힙 내에서 물리적으로 연속되어 있으며, 각 블록의 헤더와 푸터에 크기와 할당 여부가 저장됩니다. 이 구조는 간단하고 구현이 쉬운 장점이 있지만, 가용 블록을 탐색하기 위해 힙 전체를 처음부터 끝까지 순회해야 한다는 명백한 단점이 있습니다.즉, 어떤 블록이 free 상태인지 확인하..
[WIL-250625]이번 주의 트러블슈팅: 첫 번째 벽이 재귀였다면, 두 번째 벽은 RED-BLACK TREE
·
크래프톤정글이야기/TIL - WIL
Red-Black Tree를 직접 구현하며 마주한 의문과 핵심 개념 정리🔎 RED-BLACK TREE 보러가기👉 Red-Black 트리 쉽게 이해하기 : 삽입부터 균형유지까지👉 Red-Black 트리 삭제 정리이번 주는 Red-Black Tree를 직접 구현해보는 과정을 진행했습니다.처음에는 "이론만 잘 이해하면 구현은 쉽게 따라오겠지" 라는 생각을 했지만, 실제로 코딩을 시작하면서 그게 큰 착각이었다는 걸 바로 깨달았습니다.조건 분기와 예외 처리, 그리고 색상 규칙의 조합 속에서 논리적 사고의 체력이 점점 바닥나는 느낌이었죠.🤔 구현 중 떠오른 두 가지 의문왜 처음에 Red로 넣는 걸까?Black으로 먼저 넣거나, 다 넣고 나중에 한꺼번에 회전하면 더 쉬운 것 아닌가?이 두 질문을 실마리 삼아,..
[WIL-250619] 재귀 호출, 스택에 직접 그려보니 보이더라 – 트리 탐색 구현기
·
크래프톤정글이야기/TIL - WIL
이진 트리에서 홀수 노드의 합 구하기이진 트리 구조에서 모든 홀수 값 노드를 재귀적으로 더하는 함수를 구현했다.이 문제는 재귀 탐색을 통해 트리 전체를 순회하며 홀수 값을 누적하는 구조이다.문제의 트러블 슈팅재귀“그래프 방식에서 재귀를 호출하면 어떻게 될지?”재귀 호출의 흐름을 큰 그림으로 이해하지 못함.해결방법팀원에게 조언을 듣고 함께 시각화메모리 스택에 호출이 어떻게 쌓이는지 직접 그려보며 추적스스로 트리 구조를 따라가며 스택이 어떻게 쌓이고, 결과가 어떻게 돌아오는지 학습문제설명접근 방법트리를 재귀적으로 순회하면서 다음을 수행:왼쪽/오른쪽 서브트리를 재귀 호출기저 조건을 만났을때 스택에 빠지면서 각 노드의 홀수인지 판단홀수이면 누적 result += node->item완성코드int sumOfOddN..
[TIL-250524(SCAP)] 정수의 표시
·
크래프톤정글이야기/TIL - WIL
정수형 데이터 타입 완벽 정리1. 정수형 타입 기본 정보타입크기 (바이트)비트 수범위 (signed)범위 (unsigned)char1 byte8-128 ~ 1270 ~ 255short최소 2 bytes16-32,768 ~ 32,7670 ~ 65,535int일반적으로 4 bytes32-2,147,483,648 ~ 2,147,483,6470 ~ 4,294,967,295long4 또는 8 bytes64-2⁶³ ~ 2⁶³ - 10 ~ 2⁶⁴ - 1long long최소 8 bytes---부호 여부signed: 양수와 음수 모두 표현 가능unsigned: 0 이상만 표현 가능예시예시int x; // 기본적으로 signed intunsigned int y; // 부호 없는 정수short z; ..