본문 바로가기

전체 글67

Git만 알던 개발자가 만난 SVN: 공통점 및 기본 사용법 그동안 소스코드 버전관리를 할 때 Git만 사용을 해왔는데, 이번 프로젝트에서 처음으로 SVN을 사용해보게 되었습니다. 이번 기회에 Git과 SVN의 기본 개념과 차이점을 간략하게 비교한 후, Git과 SVN 각각의 사용법과 SVN 사용 시 유의해야 할 점들을 정리해보려고 합니다.1. 버전 관리 시스템 개요Git분산 버전 관리 시스템:각 개발자가 로컬에 전체 이력을 보관하여 독립적인 작업이 가능하며, 네트워크 없이도 대부분의 작업을 진행할 수 있습니다.강력한 브랜치 관리:경량 브랜치 생성 및 병합이 자유로워 실험적 기능 개발이나 병렬 작업에 유리합니다.빠른 속도와 유연성:대규모 프로젝트 및 복잡한 협업 환경에서 뛰어난 성능을 자랑합니다.SVN (Subversion)중앙집중형 버전 관리 시스템:모든 변경 .. 2025. 3. 23.
예상치 못한 AWS 비용 청구 경험과 교훈 최근 지인들과 기획한 투두리스트 토이 프로젝트에서 배포를 처음으로 진행해보면서 AWS의 EC2, RDS, S3 서비스를 활용해봤습니다. 작은 프로젝트였고 사용량이 적어서 비용이 거의 발생하지 않을 거라고 생각했는데, 실제로는 예상보다 높은 요금이 청구되었습니다. 이번 글에서는 왜 작은 프로젝트에서도 요금이 많이 나왔는지 그 원인과 해결 방법, 그리고 AWS를 단순히 사용하는 것과 효율적으로 잘 활용하는 것의 차이에 대해 다뤄보려고 합니다. 문제 발견프로젝트는 간단한 기능을 구현하는 토이 프로젝트였지만, 실제 청구서를 확인해보니 RDS 비용이 전체 과금의 큰 부분을 차지하고 있었습니다. “왜 이렇게 RDS 비용이 많이 나왔지?”라는 의문이 들었고, 여러 원인을 분석하게 되었습니다.원인 분석인스턴스 유형 선.. 2025. 3. 16.
프로세스와 쓰레드(2강) 프로세스의 개념 쓰레드의 개념프로세스와 쓰레드의 관계 1. 프로세스의 개요1) 프로세스 : 실행중인 프로그램- 프로그램 : 동작을 하지 않는 정적, 수동적 개체- 프로세스 : 동작을 하는 능동적 개체 2) 운영체제로부터 자원을 할당받아 동작- 자원 : CPU, 메모리, 입출력장치, 파일 등- 동작 : CPU가 프로세스의 명령을 실행 3) 운영체제(프로세스 관리자)가 처리하는 작업- 프로세스 생성 및 종료- 프로세스를 실행시키기 위한 스케줄링 작업- 프로세스의 상태 관리(실행중인지 중지되었는지 ..)- 작업관리자에서 현재 내 pc에서 실행중인 프로세스들을 확인할 수 있음 - 동일한 프로그램(ex.Hwp) 여러 번 실행시켰을 경우 동일한 이름으로 구분할 수 없기에 프로세스 아이디인 PID로 확인할 수 있음2.. 2025. 3. 9.
운영체제 소개 (1강) 1강 운영체제 소개운영체제는 컴퓨터를 사용하기 위해 반드시 필요한 소프트웨어 중 하나이다. 컴퓨터가 사용자에게 제공하는 서비스가 다양해지고 편리해지는 만큼 사용자를 위해 컴퓨터 내에서 이루어져야 하는 자원의 관리나 활용이 효율적으로 동작해야 하는데, 운영체제는 그 근간을 이루는 핵심적인 시스템 소프트웨어이다.  1. 운영체제란 무엇인가?운영체제는 대표적인 시스템 소프트웨어이며 응용소프트웨어와 하드웨어 사이의 매개체 역할을 한다고 볼 수 있다.컴퓨터 시스템의 자원을 관리하고 컴퓨터 프로그램들이 동작하기 위한 서비스를 제공하는 프로그램들의 모음이다. ⚒️운영체제의 역할1) 컴퓨터 시스템의 자원관리- 자원 : 하드웨어 자원, 소프트웨어 자원, 데이터- ex) 저장장치에서 데이터 읽어오기, 키보드나 마우스제어,.. 2025. 3. 2.