분류 전체보기 103

[Linux]리눅스의 모든 것은 파일로 이루어져있다 - 리눅스 파일 시스템

들어가며OS는 파일 시스템이 없다면 작동하지 않는다고 말할 수 있을 정도로 운영체제 그 자체입니다. 저희가 컴퓨터를 켜면 반겨주는 많은 바탕화면의 아이콘들도 사실은 다 파일들이죠.이 글에선 우리가 흔히 보던 파일들이 어떤 시스템으로 구성되어 있는지 알아보고자 합니다. 매일 쓰던 파일 어떻게 구성되어있을까요??리눅스에선 파일 시스템은 3개의 계층으로 된 다면적 계층 구조로 되어있습니다. 논리 파일 시스템, 가상 파일 시스템, 물리 파일 시스템으로 구성되어 있습니다.1. 논리 파일 시스템기반이 되는 계층으로 논리 파일 시스템이 있습니다. 이 논리 파일 시스템은 사용자 어플리케이션들과 파일 시스템 사이의 인터페이스 역할을 하는데 우리가 알고 있는 파일 열기, 읽기, 닫기 등의 관리 작업들을 수행하는 로직을 ..

[Java]JVM GarbageCollector - 입문서

들어가며우리는 자바에서 객체를 new 키워드로 만들곤 합니다. 하지만 객체를 생성은 하지만 삭제를 따로 하신 기억이 없으실 겁니다. 사실 객체를 생성한다는 말은 메모리에 객체에 관한 데이터를 올린다는 말입니다. 그렇다면 당연히 삭제하는 과정이 있어야 할 텐데 저희는 명시적으로 삭제를 하지 않죠. 그래도 문제없이 돌아가는 것은 GarbageCollector의 친구가 있었기 때문입니다. 동적할당은 Heap과 관련이 있다.객체를 new 로 생성하는 것은 동적으로 할당을 한다는 말입니다. 동적 할당은 정적 할당과는 차이가 있는데 정적 할당은 이미 프로그램이 실행되기 전부터 할당이 정해져 있는 반면에, 동적 할당은 프로그램이 실행되는 환경(런타임 환경)에 되어서야 할당하기로 결정 나는 것이기 때문에 '동적'이라는..

[디자인 패턴] 템플릿 메서드(Template Method) 패턴

들어가며템플릿 메서드 패턴은 디자인 패턴 종류 중 행동 패턴에 속한 것으로 상위 클래스에서 알고리즘의 정의를 미리 만들어둬서 하위 클래스들이 알고리즘의 구조를 바꾸지 못하게 함과 동시에 override를 할 수 있도록 하는 디자인 패턴입니다.다른 디자인 패턴과 동일하게 코드를 재사용성을 높이고, 커스터마이징이 가능성을 열어뒀지만 전체적인 프로세스의 흐름은 동일하게 가져갈 수 있도록 해줍니다. 주요 키워드추상 클래스템플릿 메서드를 정의합니다.(일반적으로 final을 붙여 하위 클래스에서 이를 수정하지 못하도록 합니다)모든 하위 클래스가 공통으로 실행할 로직의 순서를 정의해둔 추상 메서드를 가지고 있습니다.템플릿 메서드중심에 있는 메서드로 주요 로직(알고리즘)의 실행 순서(시퀀스)를 수행하는 메서드입니다.추..

[Linux-Tool] 입문자를 위한 기본 명령어

들어가며리눅스(Linux)는 오늘날 없어서는 안 될 운영체제가 되었습니다.특히 백엔드 개발자를 목표로 하고 있다면 반드시 만날 수밖에 없는 운영체제입니다.이 리눅스를 사용하는데 꼭 필요한 기본 명령어에 대해 알아보겠습니다. 리눅스란?리눅스는 무료이자 오픈 소프트웨어인 운영체제입니다. Linus Torvalds라는 전설적인 개발자가 대학교를 다니며 만든 운영체제로 현재 안 쓰이는 곳이 없을 정도로 매우 대중적인 운영체제로 발전했습니다. 파일 및 디렉토리 관련 자주 쓰이는 명령어들(1) lsls 명령어는 보통 현재 접속한 디렉토리에서의 파일 또는 폴더들을 확인하기 위해서 사용합니다.ls {옵션}// {}는 없어도 된다는 의미아무런 옵션을 뒤에 붙이지 않고 ls를 입력하면 현재 디렉토리의 정보를 간략히 표시합..

[운영체제] 가상 메모리(Virtual Memory)

들어가며가상 메모리는 OS의 주 역할이자 현대 컴퓨터에서 가장 중요한 메커니즘이다.가상 메모리란?메인 메모리의 추상화로 각 프로세스에 하나의 크고 통합된, 사적인 주소 공간을 제공하는 것을 의미.그렇다면 사적인 주소 공간 제공이 왜 중요한 걸까?? 가상 메모리가 없으면 어떻게 되는 걸까?먼저, 알아야 할 것이 있는데 바로 물리 주소라는 개념이다. 컴퓨터 시스템의 메인 메모리는 M개의 연속적인 바이트 크기 셀의 배열로 구성된다. 각 바이트는 고유의 물리 주소(Physical Address)를 가진다. 그렇다면 우린 자연스럽게 물리 주소를 통해 메인 메모리에 접근하여 데이터를 꺼낼 수 있다. 이를 물리 주소 방식 이라고 한다. 물리 주소 방식의 문제점만약 물리 주소 방식만 사용한다면, 우린 프로그램을 개발할..

[회고]크래프톤 정글 알럼나이(홈커밍)행사 - 개발자 고민 토크

2025-04-13 크래프톤 정글 알럼나이??어느 날 평화롭지 않게 살아 남고 있던 크래프톤 정글 생활에서 알럼나이라는 행사가 열린다고 공지가 올라왔었다.뭔 말인지 검색해 보니 졸업생, 동창생을 뜻하는 단어였다.그러니까 이전에 크래프톤 정글을 졸업한 분들이 오시는 귀한 홈커밍 행사였다!패널 토크 시간 & 개인 질문 시간선배분들과 함께 하는 패널 토크 시간과 개인 질문 시간에 나왔던 여러 질문들을 합쳐서 가공?해서 작성해봤다. Q1.  주변에 잘하는 사람들을 보면서 자신이 초라해짐을 많이 느끼곤 하는데 어떻게 이를 극복할까요?결국 개발자의 생활은 나와의 싸움에 연속이다. 직장에 들어가더라도 끊임없이 계속 공부를 해야 하기 때문인데, 여기엔 질문을 주신대로 자신의 템포를 유지하는 것이 중요하다. 즉, 자신의..