전체 글 (102) 썸네일형 리스트형 취준 TIL 시작 크래프톤 정글 초반에 TIL을 작성했었는데, 엄청난 귀찬이즘에 한달도 안되어서 쓰지 않고 공부를 했었다.... 취업 시즌이 되니 그 기간동안 내가 열심히 무언가를 했었는데, 기록이 없으니 이력서에 증명할 방법이 없다는 것을 뼈저리게 느끼며 지금부터라도 TIL을 열심히 써보자는 생각으로 시작하게 되었다. 우선 취준 기간 동안에 TIL에 계획은 다음과 같다 1. 하루에 코딩 테스트 문제 1문제 이상 풀고 정리하기2. CS 기초 개념 정리 간단하게라도 1개 이상 정리3. 추가적으로 공부하거나 프로젝트 리팩토링 한 개념들 정리 이상 이 세가지를 취업까지 꾸준히 하는 것을 목표로 잡았다. 이왕 시작한거 도중에 멈추지 말고 꾸준히 해보자! 메모리 단편화 (Memory Fragmentation) 사용 가능한 메모리 공간이 분산되어 프로세스가 필요한 메모리 공간을 할당받지 못하거나, 메모리 공간을 효율적으로 사용하지 못하는 상황 시스템의 전체적인 메모리 사용 효율성을 저하 메모리 할당 및 해제 알고리즘의 선택, 메모리 할당 정책 등에 영향 메모리 관리 기법을 통해 해결 ( 가상 메모리, 메모리풀 ) 외부 단편화 ( External Fragmentation ) 메모리 공간들이 작은 조각으로 나뉘어 프로세스가 요구하는 큰 메모리 블록을 할당받지 못하는 상황 프로세스들이 메모리를 할당하고, 해제하는 과정에서 발생 가능 내부 단편화 ( Internal Fragmentation ) 할당된 메모리 블록의 실제 사용되지 않는 부분 메모리 할당이 고정된 크기로 이루어지는 경우에 발생 메모리 단편화 해결방법 페이.. 동적 메모리 할당(Heap, sbrk, malloc, free) 프로그램 실행 도중에 운영체제로부터 메모리를 필요한 만큼만 할당받아 사용하고 사용이 끝난 뒤 반환 자원을 효율적으로 관리 가능 메모리 영역 중 힙(Heap) 영역에 할당됨 brk 프로세스의 데이터 섹션의 끝인 break 지점을 변경 → 동적으로 할당한 메모리 영역의 크기를 조절 가능 #include int brk(EndDataSegment) char *EndDataSegment; #include : brk 함수가 포함된 헤더 파일 EndDataSegment : break로 지정하고 싶은 값 ( 프로세스의 최대 데이터 값 초과 X ) return : 성공시 0, 실패시 -1 리턴 sbrk 프로세스의 데이터 섹션의 끝인 break 지점을 변경하고, 변경되기 이전의 break 주소 ( = 공간이 확장 됐다면,.. 이전 1 2 3 4 ··· 34 다음