전체 글

전체 글

    2023GMTK 게임잼

    2023GMTK 게임잼

    링크 : https://itch.io/jam/gmtk-2023/entries Submissions to GMTK Game Jam 2023 itch.io 게임 링크 : https://itch.io/jam/gmtk-2023/rate/2161771 Little Sacrifice by EunhoKang for GMTK Game Jam 2023 Play gameLittle Sacrifice's itch.io pageResultsRanked from 14 ratings. Score is adjusted from raw score by the median number of ratings per game in the jam.How does your game fit the theme?This game is inspire..

    OS - Deadlock

    OS - Deadlock

    목차 데드락 데드락 방지 데드락 회피 데드락 허용(탐지, 회복) 데드락 무시 데드락(Deadlock, 교착상태) 데드락? OS에서 데드락이란, 2개 이상의 작업이 서로 상대방의 작업이 끝나기만을 영원히 기달려서 결국 아무것도 하지 못하고 있는 상태입니다. 데드락은 아래 4가지 필요 조건을 다 만족해야지 발생합니다. 1. 상호 배제(Mutual Exclusion) : 한 순간에 오직 하나의 프로세스만 자원을 사용할 수 있어야 합니다. 2. 점유 대기(Hold and wait) : 자원을 적어도 하나 보유하고, 다른 프로세스가 점유하고 있는 자원을 얻기 위해 대기하는 프로세스가 있어야 합니다. 3. 비선점(No preemption) : 비선점 형태로 Task가 끝나야지만 자원을 놓아야 합니다. 4. 순환 대..

    OS - 동기화 예시

    OS - 동기화 예시

    목차 생산자 소비자 문제 (Producer-Consumer) 독자-저자 문제 (Reader-Writer) 식사하는 철학자 문제(Dining-Philosophers problem) 커널 동기화 동기화 예시(Synchronization Examples) 클래식 동기화 문제 3가지 Bounded Buffer problem = 생산자-소비자문제(Producer-Consumer problem) Readers and Writers problem Dining-Philosophers problem 생산자-소비자 문제(Producer-Consumer, Bounded Buffer problem) 생산자-소비자 문제는 여러 개의 프로세스를 어떻게 동기화할 것인가에 관한 고전적인 문제입니다. 한정 버퍼 문제(Bounded b..

    OS - 동기화 툴

    OS - 동기화 툴

    목차임계구역(Critical Section)Peterson's Solution동기화를 위한 하드웨어 지원(메모리 배리어, 하드웨어 명령, 원자적 변수)뮤택스 락세마포모니터LivenessLock Free동기화 툴(Synchronization Tools)배경(Background)프로세스는 병행/병렬 실행이 가능합니다. 이때 여러 프로세스가 동시에 공유 데이터에 접근하여 경쟁 상태(race condition)가 발생해 데이터에 불일치가 생겨 데이터 무결성에 문제가 생깁니다. 멀티코어, 멀티 스레드 개발이 중요해지면서 자원 공유 가능성이 높은 여러 스레드를 경쟁 상태가 더 빈번해집니다. 이를 위해 각 스레드를 의도에 맞춰 동기화할 필요가 있습니다.*경쟁 상태(race condition)란 공유 자원에 대해 여러..

    OS - CPU Scheduling

    OS - CPU Scheduling

    목차CPU 스케줄링 (선점/비선점 - preemptive/nonpreemptive, Dispatcher)스케줄링 알고리즘 (FCFS, Round-Robin, SJF ...etc)스레드 스케줄링 (멀티 스레드 멀티 코어, Load balancing, 캐시 선호도)실시간 CPU 스케줄링 (Event latency, Rate monotonic, EDF)실제 OS 사례 CPU Scheduling컨셉 : "대부분의 작업은 CPU 사용이 짧다. → CPU가 작업 사이 쉬는 시간(메모리 로드/스토어)에 다른 작업을 시켜 쉬지 못하게 한다"를 통해 CPU 활용을 끌어 올리는것이 메인 컨셉입니다. 이유는 CPU, I/O, Memory에 작업 속도, 시간이 다른 점에서 각 작업들을 효율적으로 배분하는 생각입니다.CPU S..

    프로그래머스 - 보석 쇼핑(67258)

    링크 : https://school.programmers.co.kr/learn/courses/30/lessons/67258 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 설명 진열장에 보석명 순서대로 들어있습니다. 본인은 배열의 특정 범위의 보석을 모두 구매하되 아래 목적을 달성하고 싶습니다. 진열된 모든 종류의 보석을 적어도 1개 이상 포함하는 가장 짧은 구간을 찾아서 구매 예를들어 4종류의 보석(RUBY, DIA, EMERALD, SAPPHIRE)이 8개가 진열된 진열대입니다. ["DIA", "RUBY", "RUBY", "DIA", "DIA", ..

    프로그래머스 - 수식 최대화(67257)

    링크 : https://school.programmers.co.kr/learn/courses/30/lessons/67257 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 설명 오직 숫자와 +, -, * 연산자로 이루어진 문자열 수식이 다음과 같이 제공됩니다. "100-200*300-500+20" 이 문자열 수식에서 연산자 우선순위를 정의하여 해당 수식에 결과의 절대값이 가장 큰 값이 무엇인지 구해야합니다. 예시로 "100-200*300-500+20" 수식은 * > + > - 로 연산자 우선순위를 정한다면 -60,420으로 절대값 60420으로 가장 ..

    방구석 오마카세 - 23.07.01

    방구석 오마카세 - 23.07.01

    3학년 1학기가 끝나고 여름. 3학년 2학기 이후부터는 귀찮아서라도 안할거 같아서 꼭 하고 싶었던 방구석 오마카세를 해봤다. 목표는 만족스러운 한 싸이클의 오마카세. 메뉴는 에피타이저 → 콜드 → 핫 → 디저트 4단계로 나눠서 진행할 생각을 했고 각 단계마다 1개 or 2개의 메뉴를 구상했다. 토마토 츠케모노 먼저 에피타이저는 토마토 츠케모노. 좋아하는 텐동집에서 최애 사이드메뉴인데 부모님과 같이 먹을려고 만들어보거나 따로 만든적은 있지만 정작 나는 내가만든걸 한 번도 못먹어봐서 맛있다, 프레시하다라는 후기만 받아보고 맛을 아예 모르는 상태라 꼭 한 번 먹어보고 싶었다. 재료 : 화이트 와인 아무거나 스파클링도 나쁘지 않았다고 합니다, 설탕, 레몬, 토마토 1. 토마토 1kg는 모두 껍질 벗기기 쉽게 칼..