참여하게 된 계기 CS 지식은 기술 면접에서도 자주 등장하고 실제 문제를 해결할 때도 중요한 기반이 되는데, 그에 비해 제 지식은 다소 얕다고 느꼈습니다. 자료구조나 알고리즘은 어느 정도 익숙하지만 개념 위주로만 알고 있어 정리가 필요했고, 운영체제에 대한 이해는 특히 부족하다는 생각이 들었습니다. 이 기회에 자료구조와 알고리즘을 정리하고 운영체제의 기본을...
이전에는 한 주 동안 들었던 강의를 정리하는 방식으로 발자국을 작성했었다. 이번에는 마지막인 만큼 회고로 마무리를 해보려고 한다. 이번 스터디를 통해 자료구조, 알고리즘, 운영체제에 대한 기초 개념을 이해하는 데 큰 도움이 되었다. 매일 강의를 듣고 미션을 제출하는 과정에서 학습의 기초를 탄탄히 다질 수 있었다. 하지만 매일 강의를 듣는 것이 예상보다 힘들...
1. 메모리의 종류는 어떤것들이 있나요? 각 메모리의 특징도 함께 적어주세요. 레지스터 가장 빠른 기억저장소 CPU 내에 존재 컴퓨터의 전원이 꺼지면 데이터가 사라져 휘발성 메모리라고 함 캐시 필요할 것 같은 데이터를 미리 가져와 저장하는 곳 성능의 이유로 여러 개를 둔다 메인 메모리 실제 운영체제와 다른 프로세스들이 올라가는 공간 전원이 공급되지 않으면 ...
1. 지금까지 배운 5개의 정렬 알고리즘의 장단점과 시간 복잡도를 적어주세요. 버블 정렬 시간 복잡도: O(n^2) 장점: 이해와 구현이 간단함 단점: 성능이 좋지 않다. 선택 정렬 • 시간 복잡도: O(n²) • 장점: 이해와 구현이 간단함 • 단점: 성능이 좋지 않다. 삽입 정렬 • 시간 복잡도: O(n²) • 장점: 이해와 구현이 간단함 • 단점: 성...
운영체제 프로세스 간 통신 프로세스는 독립적으로 실행되기도 하지만 다른 프로세스와 데이터를 주고 받으며 통신을 하는 경우도 있음 통신은 한 컴퓨터 내에서 실행되고 있는 다른 프로세스와 할 수 있고, 네트워크로 연결된 다른 컴퓨터에 있는 프로세스와 할 수도 있다. 종류 한 컴퓨터 내에서 파일: 통신을 하려는 프로세스들이 하나의 파일을 이용해 읽고 쓰는 방법 ...
1. 재귀함수에서 기저조건을 만들지 않거나 잘못 설정했을 때 어떤 문제가 발생할 수 있나요? 기저 조건이 없거나 잘못 설정되면 재귀 호출이 끝나지 않고 무한히 호출되면서 스택 메모리를 초과하여 Stack Overflow 오류가 발생할 수 있다. 기저 조건이 정확하지 않으면, 재귀 호출이 정상적으로 종료되지 않거나 의도한 값과 다른 결과를 반환할 수 있다 2...
1. FIFO 스케줄링의 장단점이 뭔가요? 장점 프로세스를 요청 순서대로 처리하므로 구현이 간단하다. 먼저 도착한 프로세스가 먼저 실행되므로 기아 상태(Starvation)가 발생하지 않는다. 단점 실행 시간이 긴 프로세스가 먼저 도착하면 뒤의 짧은 프로세스들이 오래 기다려야 하는 문제가 발생할 수 있다. CPU 사용률이 떨어진다. 2. SJF를 사용하기 ...
자료구조와 알고리즘 자료구조란? 데이터가 어떻게 저장되고, 처리되는지에 대한 구조와 방법 가장 기본적인 자료구조는 변수이다. 자료구조에 따라 데이터를 처리하는 방법이 달라지며, 코드가 더 효율적이고 간단해질 수 있다. 알고리즘이란? 문제를 해결하기 위한 확실한 절차나 방법 자료구조를 선택하여 데이터를 저장하고, 이에 맞는 알고리즘을 사용해 데이터를 처리하여...
여러분은 교실의 학생 정보를 저장하고 열람할 수 있는 관리 프로그램을 개발하려고 합니다. 이 때 여러분이라면 학생의 정보를 저장하기 위한 자료구조를 어떤 걸 선택하실 건가요? 이유를 함께 적어주세요. 배열이나 리스트를 사용한다. 학생 정보는 보통 순차적으로 저장되고, 학생이 추가될 때마다 새로 입력되는 정보가 많지 않다. 배열이나 리스트를 사용하면 학생 정...
while(true){ wait(1); // 1초 멈춤 bool isActivated = checkSkillActivated(); // 체크 } 1. 위 코드는 1초 마다 플레이어가 스킬을 사용했는지 체크하는 코드입니다. 이 방식은 폴링방식입니다. 1초마다 체크하기 때문에 성능에 좋지 않습니다. 이를 해결하기 위한 방식으로 어떤 걸 이용해야 할까요? 인터럽...