본문 바로가기

전체 글100

Chapter 9. 메인 메모리 - 1부 안녕하세요 파피몬입니다! 운영체제 9단원에 대해 공부해 보았습니다. 1부입니다! Abraham Silberschatz의 Operating System Concepts 10th edition과 학부 수업을 듣고 정리한 내용입니다. 오개념이 있다면 알려주세요~~ 1부에서는 현재 운영체제로 가는 역사 정도로 생각하면 될 것 같습니다. 이렇게 발전해서 페이징과 VM이 등장했구나의 초석을 다지는 내용입니다. 기본 하드웨어 CPU에서 직접 접근할 수 있는 장치는 메인 메모리와 각 처리코어에 내장된 레지스터다. 따라서 실행되어야 하는 명령어들은 CPU가 접근할 수 있도록 메인 메모리에 갖다 놔야 한다. 만약 메모리에 없다면 CPU 접근 전, 해당 명령들을 메모리에 옮겨놔야 한다. 또한 메인 메모리에는 병행 실행을 위.. 2020. 12. 1.
Java Code Conventions 우아한테크코스 1차에 합격했다! 이제 3주 동안의 프리코스를 거칠 텐데, 그전에 자바 코드 컨벤션을 공부해보도록 한다. 몸이 너무 안 좋아서 글을 읽는 게 도저히 안 되더라ㅜㅜㅜ 이미 잘 정리해주신 선배님들의 글을 참조하면서, 블로그에 포스팅하며 공부하기로 해본다. 미리 얘기하지만, 거의 베끼다시피 한 포스팅이다. 개인 공부를 위해 남긴다! 참조한 포스팅 : myeonguni.tistory.com/1596 [코딩규칙] 자바 코딩 규칙(Java Code Conventions) [코딩 규칙] 자바코딩 규칙(Java Code Conventions) 자바 프로그래밍 언어 코딩 규칙 원문 : Oracle / Code Conventions for JavaTM Programming Language / 1999-4-2.. 2020. 11. 24.
Chapter 8. 교착 상태 - 2부 안녕하세요 파피몬입니다! 운영체제 8단원에 대해 공부해 보았습니다. 2부입니다! Abraham Silberschatz의 Operating System Concepts 10th edition과 학부 수업을 듣고 정리한 내용입니다. 오개념이 있다면 알려주세요~~ 1부에서 교착 상태의 개념을 알아보고 처리 방법으로 예방, 회피, 탐지, 복구 방법이 있다고 했다. 예방까지 알아보았고 이제 2부에서 회피, 탐지, 복구에 대해서 알아보자! 1부에서 살펴본 예방 방식은 장치 이용률(utilization), 시스템 총 처리율(throughput)을 감소시킨다. 이를 개선시켜야 하는데... 생각해보면 각 스레드의 요청과 방출에 대한 완전한 순서를 파악하고 있다면, 스레드가 미래의 교착상태를 일으킬 것을 예상하여 대기시킬.. 2020. 11. 18.
Chapter 8. 교착 상태 - 1부 안녕하세요 파피몬입니다! 운영체제 8단원에 대해 공부해 보았습니다. 1부입니다! Abraham Silberschatz의 Operating System Concepts 10th edition과 학부 수업을 듣고 정리한 내용입니다. 오개념이 있다면 알려주세요~~ 다중 프로그래밍 환경에서는 여러 스레드들이 한정된 자원을 사용하기 위해 경쟁할 수 있다. 앞서 살펴본 세마포 같은 경우엔 자원을 할당해 줄 수 없다면 해당 스레드를 대기 상태로 변경해 저장해 두고 있었다. 하지만 여기서 문제가 발생하는데, 대기 중인 스레드들이 평생 대기해야 한다면 어찌해야 할까? 한 스레드가 요청한 자원들이 다른 스레드들에 의해 점유되어 있고, 그들 역시 다른 스레드가 점유 중인 자원을 대기 중이라면, 아주 단단히 꼬인 상황이 발생.. 2020. 11. 18.
공부 중독 10월에 읽은 공부 중독을 이제야 포스팅하게 되었다. 시험 기간에 공부하다가 현타(?)가 와서 집어 들었다가 잘 참고 시험 기간을 다 끝내고 읽었던 책이다. 읽으면서 인상 깊었던 구절을 뽑아보았다. 1. 하지만 만점이 흔하게 되면 생기는 문제가, 틀리는 것에 대한 본능적 두려움이 생기는 거예요. 2. 시험을 안 보면 좋은 게 실제 내 능력을 보여주지 않아도 된다는 점이에요. 저는 이것을 요즘 아이들이 정신 승리하는 방법이라고 생각해요. 그것을 통해서 나는 여전히 가능성 있고 굉장히 잘해나갈 수 있는 사람이라고 생각하고 사는 거예요. 자기애의 훼손 없이 말이죠. 3. 제가 늘 재미있게 생각하는 게 그럼 어떤 일을 하기 위해 온 것이냐고 물어보면 대부분 ‘기획’이라고 말하는 경우가 많다는 것입니다. 즉, 자.. 2020. 11. 16.
Chapter 7. 동기화 예제 안녕하세요 파피몬입니다! 운영체제 7단원에 대해 공부해 보았습니다. Abraham Silberschatz의 Operating System Concepts 10th edition과 학부 수업을 듣고 정리한 내용입니다. 오개념이 있다면 알려주세요~~ 이번에는 우리 앞서 배운 동기화 도구들을 통해 고전적인 동기화 문제를 해결해보도록 하자! papimon.tistory.com/51 앞선 동기화 도구들 1부 포스팅에서 차 있는 버퍼의 갯수를 세는 count 변수의 inconsistency에 대해 알아보고 해결 방법을 알아보았다. 이제 이 문제를 Semaphore를 통해 해결해보자! 주석을 통해 동작 원리를 설명해 보았다. [소비자 & 생산자가 공유하는 자료구조] int n; semaphore mutex = 1; .. 2020. 11. 14.
Chapter 6. 동기화 도구들 - 3부 안녕하세요 파피몬입니다! 운영체제 6단원에 대해 공부해 보았습니다. 중간고사 보고 이거 저거 준비하고 과제하고 하느라 이제서야 포스팅하네요ㅜㅜㅜ 드디어 3부입니다! 아마 4부작이 되지 않을까 싶네요! Abraham Silberschatz의 Operating System Concepts 10th edition과 학부 수업을 듣고 정리한 내용입니다. 오개념이 있다면 알려주세요~~ 1,2부에서 살펴본 임계구역 문제에 대한 솔루션들은 하드웨어 기반이다. 이는 복잡하고, 응용 프로그래머는 사용할 수 없는 솔루션이다. 이번 3부에서는 Mutex Lock, Semaphore에 대해서 공부해보자! 하드웨어 기반의 솔루션(TAS, CAS 등등)을 뒤로 하고 이제 상위 수준 소프트웨어 도구를 살펴볼 차례이다! 경쟁 조건을.. 2020. 11. 13.
[롯데X멋사 해커톤] LOTTERY 롯데X멋사 해커톤에 출품을 완료했다! 지난 1달간 고생한 우리 팀원들 너무 자랑스럽다! 기존의 부탁해요에서 주제에 알맞게 아이디어를 수정해 LOTTERY라는 서비스를 완성했다. 우리가 만든 서비스는 LOTTERY라는 LOTTE GRS지점 간 재고 나눔 솔루션이다. 소개글과 함께 포스팅한다. LOTTE XLIKELION@UNIST UNIST 조영상, 정현준, 복영규, 차준형 LOTTERY는 LOTTE GRS 지점의 점주들끼리 실시간으로 재고를 공유하는 서비스 입니다. LOTTERY는 점주들에겐 재고 처리의 도움을 주고 손님들에겐 자신이 사고 싶은 제품이 가장 가까운 매장에서 품절이 되는 일이 없도록 도와줍니다. LOTTERY는 웹과 안드로이드 앱으로 만나 보실 수 있습니다! Sample ID : kangn.. 2020. 10. 26.
Chapter 6. 동기화 도구들 - 2부 안녕하세요 파피몬입니다! 운영체제 6단원에 대해 공부해 보았습니다. 우선... 2부입니다! 몇부작일지는 모르겠네용 Abraham Silberschatz의 Operating System Concepts 10th edition과 학부 수업을 듣고 정리한 내용입니다. 오개념이 있다면 알려주세요~~ 1부에서 우리는 빠른 시스템 멀티 코어 + 선점형 커널을 사용하고 있고, 프로세스 동기화를 어떤 방식으로 해결할까? 라는 질문을 던진채 마무리 했다. 이제 컴공 형님들이 어찌 해결해 오셨는지 하나씩 살펴보자. 2020. 10. 20.
반응형