SW사관학교 Jungle
-
Pintos - System CallSW사관학교 Jungle 2021. 2. 17. 21:06
feat. 2월 중순 되돌아보기 link pintos-kaist-gitbook을 참고해 작성한 글입니다. 2월 4일부터 17일까지 2주간 Pintos의 System Call들을 구현했다. 그동안 당연하게 여기고 사용하고 있었던 함수들, Process 그리고 Thread들이 어떻게 작동하는지 이해하고, 살펴볼 수 있는 기회였다. 이론으로만 막연하게 익혔었던, Lock과 Semaphore를 어떻게 적용할 수 있는지 실습해볼 수 있었던 좋은 기회이기도 했다. Argument Passing pintos에서 main함수를 실행할 때 인자들을 전달하는 argument_stack함수를 구현해 볼 것이다. void _start (int argc, char *argv[]) { exit (main (argc, argv))..
-
Pintos Project - ThreadSW사관학교 Jungle 2021. 2. 4. 03:33
Pintos Project 1주차 : Thread 2주차 : User programs 3주차 : Virtual memory 4주차 : File system Jungle OS프로젝트가 시작되고 1주일이 지났다. 한 주간 Thread scheduling에 대해 공부하고, 함수들을 수정하며, donate priority까지 구현을 직접 해보았다. 시작할 때만 하더라도, 도통 무슨 소리인지 모르겠고 막막했는데 1주일이 지난 지금 다시 정리하며 많은 것들을 이해하고 있는 나 자신을 볼 수 있었다. 그동안 컴퓨터 시스템 책을 공부하며 동시성 프로그래밍을 가능하게 해주는 thread가 번갈아가며 실행된다고 막연히 알고 있었는데, priority를 고려하고, lock과 함께 사용될때 donation 방식으로(실제 사용..
-
JUNGLE_5주차SW사관학교 Jungle 2021. 1. 20. 21:22
주차별 키워드 - B tree & B plus tree 더 고민해볼 키워드 - pointer pointer와 malloc에 대해 익숙해질 수 있었던 한 주 였다. SW사관학교 정글 WEEK04 시험 B Plus Tree [입력] 삽입 – key, data 삭제 – key [출력] → 채점 시 함수를 다 같이 만들 예정 내부 노드 – key만 출력 리프 노드 – key와 data 모두 출력 [기준] 노드에 존재할 수 있는 키의 최대 개수는 3개이다. 부모의 키 값과 같은 값은 왼쪽 서브 트리에 위치한다. 트리의 리프 노드에 존재하는 키들은 오름차순 정렬한다. 삭제하고자 하는 키는 무조건 트리 내에 존재한다. 삽입하고자 하는 키는 무조건 트리 내에 존재하지 않는다. Top-Down 방식(Introductio..
-
Crafton Q&ASW사관학교 Jungle 2021. 1. 11. 19:09
Q&A Q. 크래프톤에 신입으로 들어가도 바로 라이브 서비스 중인 직접적으로 관여하기도 하나요? 크래프톤은 큰 회사입니다. 회사 내에서 하나의 프로젝트가 진행되는 것이 아니라 여러 프로젝트가 돌아가고 있습니다. 그래서 반드시 그렇다고 말씀드리기가 어렵네요. 직접 관여합니다. 하지만, 여러 안전장치들이 있습니다. 멘토와 사수가 함께 코드를 확인하며, 문제상황이 생기는 것을 사전에 방지합니다! Q. 자기 개발을 누구도 강요하지 않는 환경에서 정환님은 어떤 과정을 통해서 자기 개발을 해오셨나요? 세미나도 꾸준히 만들어 지고, 꾸준히 토론하는 문화, 분위기가 있었기 때문에 함께 이야기를 나누기 위해서는 저도 끊임없이 발전해야 했습니다. 자기개발을 강요 받은 셈입니다...ㅎ Q. 어떤 회사는 가상의 현실을 체험을..
-
JUNGLE_4주차SW사관학교 Jungle 2021. 1. 7. 11:22
컴퓨팅 사고로의 전환 4주차 주차별 키워드 - 동적 프로그래밍, 그리디 알고리즘 더 고민해볼 키워드 - 비트필드를 이용한 다이나믹 프로그래밍 풀어보자 문제를 설명하는 능력이 아주 부족하다는 생각은 하고 있었지만, 이번 기회에 다시 한번 느낄 수 있었다. 설명하는 연습도 꾸준히 해 나가도록 하자. 문제 정의 문제 해결 방안 구현 방법 SW사관학교 정글 WEEK04 시험 - 계단 오르기 click - 내리막길 click [포스팅] - 보석 도둑 click 보석 도둑💎 이번 주의 3번 문제였던 보석 도둑에 대해 알아보자. 도둑에게는 가방이 k개 있고, 각 가방에는 가방에 담을 수 있는 최대 무게보다 작거나 같은 보석을 1개씩 담을 수 있다. 이때, 훔칠 수 있는 보석 가격들의 합의 최대값을 구해야 한다. 단순..
-
JUNGLE_3주차SW사관학교 Jungle 2021. 1. 1. 13:44
컴퓨팅 사고로의 전환 3주 차 주차별 키워드 - 그래프 탐색 기본, BFS, DFS, DFS(위상정렬) 더 고민해볼 키워드 - 벨만 포드 알고리즘 - SPFA SW사관학교 정글 WEEK03 시험 - 단지 번호 붙이기 click - 숨바꼭질 click - 트리의 지름 click 트리의 지름 이번 주의 3번 문제였던 트리의 지름에 대해서 알아보자. Tree(사이클이 없는 무방향 그래프)의 지름을 구하는 문제이다. 트리에서 어떤 두 노드를 선택해서 양쪽으로 쫙 당길 때, 가장 길게 늘어나는 경우가 있을 것이다. 이때 양끝을 이루는 두 노드 사이의 거리를 트리의 지름이라고 한다. 트리의 지름을 어떻게 구할 수 있을까? 아래의 방법으로 트리의 지름을 찾을 수 있다. 트리 내의 임의의 점 A로부터 가장 먼 점 B를..
-
JUNGLE_2주차SW사관학교 Jungle 2020. 12. 24. 15:51
컴퓨팅 사고로의 전환 1주 차 주차별 키워드 - 이분 탐색, 분할 정복, 스택, 큐, 우선순위 큐 더 고민해볼 키워드 - 세그먼트 트리 - 분할 정복 - heapq, stack, deque Class 구현 SW사관학교 정글 WEEK01 시험 - 쿼드 트리 click - 쇠막대기 click - 소수의 곱 click 소수의 곱 click 2014번: 소수의 곱 첫째 줄에 K(1 ≤ K ≤ 100), N(1 ≤ N ≤ 100,000)이 주어진다. 다음 줄에는 K개의 소수가 오름차순으로 주어진다. 같은 소수가 여러 번 주어지는 경우는 없으며, 주어지는 소수는 모두 541보다 작거나 www.acmicpc.net 이번 주의 마지막 문제였던 숫자 야구에 대해서 알아보자. K 개의 소수가 주어졌을 때, 이 소수들을 서..
-
JUNGLE_1주차SW사관학교 Jungle 2020. 12. 17. 15:14
컴퓨팅사고로의 전환 1주차 주차별 키워드 알고리즘 기초(기초, 배열, 문자열, 재귀함수), 정렬, 완전탐색, 시간복잡도 더 고민해볼 키워드 문자열 탐색 - Suffix Array, KMP 정렬 - 퀵 정렬, 병합 정렬, 기수 정렬 SW사관학교 정글 WEEK01 시험 더하기 사이클 click 1,2,3 더하기 click 숫자 야구 click 숫자 야구 click 2503번: 숫자 야구 첫째 줄에는 민혁이가 영수에게 몇 번이나 질문을 했는지를 나타내는 1 이상 100 이하의 자연수 N이 주어진다. 이어지는 N개의 줄에는 각 줄마다 민혁이가 질문한 세 자리 수와 영수가 답한 스트 www.acmicpc.net 마지막 문제였던 숫자 야구에 대해서 알아보자. 영수가 세자리 숫자를 하나 생각하고, 민혁이가 수를 물어..