애플민트
수강평 작성수
-
평균평점
-
블로그
전체 4#카테고리
- 알고리즘 · 자료구조
![[워밍업 클럽_CS 전공 스터디 2기] 2주차 미션](https://cdn.inflearn.com/public/files/blogs/c465736a-db1e-4e31-8b9c-e3d1085bca91/인프런_워밍업_클럽.png?w=260)
2024. 10. 13.
0
[워밍업 클럽_CS 전공 스터디 2기] 2주차 미션
운영체제 FIFO 스케줄링의 장단점이 뭔가요? 장점: 데이터나 작업이 수신되는 적합한 사례에서 사용하면 순서를 보장하기 때문에 데이터나 작업을 처리할 때 공정성을 보장합니다.단점: 먼저 들어온 작업이 먼저 처리되기 때문에 긴급한 작업이 중간에 들어와도 앞에 있는 모든 작업이 끝난 후에 실행되어 대기 시간이 증가합니다. SJF를 사용하기 여러운 이유가 뭔가요?어떤 프로세스가 얼마나 실행될지 모르고, Burst time이 긴 프로세스는 아주 오랫동안 실행이 되지 않을 수 있습니다. RR 스케줄링에서 타임 슬라이스가 아주 작으면 어떤 문제가 발생할까요?Context Switching 에 사용이 많이 되어서 overhead가 그만큼 커집니다. 운영체제가 MLFQ에서 CPU Bound Process와 I/O Bound Process를 어떻게 구분할까요?타임 슬라이스 기준으로 CPU 사용률과 처리량 중요하면 CPU Bound Process, 응답 속도 중요하면 I/O Bound Process 로 구분합니다. 공유자원이란무엇인가요?여러 프로세스간에 공유할 수 있는 자원을 공유자원이라고 합니다. 교착상태에 빠질 수 있는 조건은 어떤 것들을 충족해야할까요?상호배제비선점점유와 대기원형대기 자료구조와 알고리즘재귀함수에서 기저조건을 만들지 않거나 잘못 설정했을 때 어떤 문제가 발생할 수 있나요? 무한 루프에 빠질 수 있습니다. 0부터 입력 n까지 홀수의 합을 더하는 재귀 함수를 만들어보세요.function sumOdd(n){ // 재귀 로직 if (n
![[워밍업 클럽_CS 전공 스터디 2기] 2주차 발자국](https://cdn.inflearn.com/public/files/blogs/7672beae-06d4-4112-876c-d4c971ac9818/인프런_워밍업_클럽.png?w=260)
2024. 10. 13.
1
[워밍업 클럽_CS 전공 스터디 2기] 2주차 발자국
강의 수강요약운영체제이번 주 강의에서 중요하게 다뤄졌던 내용은 CPU 사용을 여러 프로세스가 어떻게 나누어 할당 받을지에 대한 방법들과 프로세스 간 자원 공유에 대한 부분이었습니다.공유 자원에서 교착 상태가 일어날 경우 해결 방법에 대해서도 알 수 있었습니다.자료구조와 알고리즘재귀, 하노이탑, 정렬(버블 정렬, 선택 정렬) 개념을 학습하고, 예제 코딩을 실습하였습니다.회고점점 머리가 복잡해져가지만 차근차근 복습하며 완전히 제 것으로 만들 수 있도록 노력해야겠다는 생각을 했습니다.. 미션요약운영체제는 학습했던 개념에 대해 찬찬히 복기하면서 문제를 풀었고, 자료구조와 알고리즘은 문제 의도를 파악하고자 문제 내의 힌트들을 생각하면서 풀었습니다.회고RR 스케쥴링의 타임 슬라이스 내용을 가장 재밌게 들어서 금방 문제를 파악할 수 있었습니다.재귀 함수 설명을 너무 잘 해주셔서 금방 적용하여 풀 수 있었습니다.^^
![[워밍업 클럽_CS 전공 스터디 2기] 1주차 미션](https://cdn.inflearn.com/public/files/blogs/841a7d75-10aa-4021-a949-b257e44fb744/인프런_워밍업_클럽.png?w=260)
2024. 10. 04.
1
[워밍업 클럽_CS 전공 스터디 2기] 1주차 미션
운영체제1.while(true){ wait(1); // 1초 멈춤 bool isActivated = checkSkillActivated(); // 체크 }위 코드는 1초 마다 플레이어가 스킬을 사용했는지 체크하는 코드입니다. 이 방식은 폴링방식입니다. 1초마다 체크하기 때문에 성능에 좋지 않습니다. 이를 해결하기 위한 방식으로 어떤 걸 이용해야 할까요? 답변:인터럽트 방식을 사용합니다.프로그램과 프로세스가 어떻게 다른가요?답변:프로그램은 어플리케이션이나 exe 파일처럼 저장 장치에 저장된 명령문의 집합체이고, 프로세스는 메모리 위에 프로그램이 실행 중인 것을 말합니다.멀티프로그래밍과 멀티프로세싱이 어떻게 다른가요?답변: 멀티 프로그래밍은 메모리에 여러 개의 프로세스가 올라와 있는 것이고, 멀티 프로세싱은 CPU가 여러 개의 프로세스를 처리하는 것을 말합니다.운영체제는 프로세스를 관리하기 위해서 어떤 것을 사용하나요?답변: 프로세스의 정보를 가지고 있는 PCB를 만들고, 저장합니다. PCB는 포인터, 프로세스 상태, 레지스터 정보, 메모리 관련 정보, CPU 스케쥴링 정보 등으로 구성되어 있습니다.컨텍스트 스위칭이란 뭔가요?답변: CPU에서 처리 중인 프로세스를 다른 프로세스로 교체하는 것을 말합니다. 자료구조와 알고리즘여러분은 교실의 학생 정보를 저장하고 열람할 수 있는 관리 프로그램을 개발하려고 합니다.이 때 여러분이라면 학생의 정보를 저장하기 위한 자료구조를 어떤 걸 선택하실 건가요? 이유를 함께 적어주세요. 답변: 배열을 선택하겠습니다. 우선 학생 수는 변동 사항이 크지 않고, 조회 및 수정하는 부분이 가장 많을 것이므로 인덱스를 이용해 빠르게 참조하고, 수정할 수 있는 배열이 적합하다고 생각합니다.여러분은 고객의 주문을 받는 프로그램을 개발하려고 합니다. 주문은 들어온 순서대로 처리됩니다. 이 때 여러분이라면 어떤 자료구조를 선택하실 건가요? 이유를 함께 적어주세요.답변: 들어온 순서대로 처리해야기 때문에 FIFO 선입선출 방식의 Queue(큐)를 선택하겠습니다.
![[워밍업 클럽_CS 전공 스터디 2기] 1주차 발자국](https://cdn.inflearn.com/public/files/blogs/5c0128cd-0c23-40e6-96ce-d441ffcdd34d/인프런_워밍업_클럽.png?w=260)
2024. 09. 30.
1
[워밍업 클럽_CS 전공 스터디 2기] 1주차 발자국
강의 수강요약운영체제운영체제, CPU, 프로세스 등이 무엇인지에 대한 개념을 익혔고, 또 운영체제는 프로세스를 어떻게 관리하는 지에 대해 학습하였습니다.그 과정 속에서 메모리를 효율적으로 사용하고, CPU 성능을 향상시키기 위해 고려해야할 조건들에 대해 생각해볼 수 있었습니다.자료구조와 알고리즘자료구조와 알고리즘에 대한 정의 및 시간 복잡도에 대한 이해를 바탕으로 7가지(배열, 연결 리스트, 스택, 큐, 해시테이블, 덱, 셋) 자료구조의 개념을 학습하고, 예제 코딩을 실습하였습니다.회고현업으로 일한 지 꽤 오래되었지만 기본적인 CS 지식이 현저히 낮았습니다. 그래서 CS 지식 공부의 필요성만 느끼고, 업무에 치여 미루던 것을 이번 기회에 마음먹고 도전한 제 자신에게 칭찬을 해주고 싶습니다.한 주마다 배우는 것을 잘 정리해서 시간이 날 때마다 복습하며 체득화 시키도록 노력하고자 합니다. 미션요약운영체제는 학습했던 개념에 대해 찬찬히 복기하면서 문제를 풀었고, 자료구조와 알고리즘은 문제 의도를 파악하고자 문제 내의 힌트들을 생각하면서 풀었습니다.회고평소엔 막연하게 자료구조와 알고리즘이 접근하기 어렵다고만 느껴서 학습을 중도 포기해왔는데 이 강의를 들으면서 처음으로 '재밌다!' 라고 느꼈습니다. 앞으로 남은 강의도 재미있게 수강하며 끝까지 완주하는 것이 목표입니다!
알고리즘 · 자료구조




