Blake Woo

배열과 연결 리스트

배열과 연결리스트 컴퓨터의 자료구조에 대해서 배울때 처음 언급되는 것은 변수 이후에는 배열이다. 이러한 배열은 메모리 동적할당에 대해서 배우고 나서 연결리스트와 구분되어 한번 말이 나오게된다. 다음의 그림을 보자 배열은 간단히 말해서 메모리상에서 연속되어 할당되는 것이고 연결리스트는 메모리에서는 떨어져서 할당되나 특정 링크를 통해 연결되어 있...

컴퓨터 기초 개요

컴퓨터 기초 컴퓨터 기초가 좀 부족한가 싶어서 관련 내용 포스팅을 시작할까 한다. 사실 다 알고있는 내용이지만 그걸 막힘없이 설명할 수 있냐고하면 또 대답하기 애매해지는터라 파인만 선생님의 가르침에 따라 해당 내용을 전혀 모르는 사람도 이해할 수 있는 형태로 포스팅을 진행 해 볼까 한다. 목차 파트는 잦은 업데이트가 있을 예정이다, 또한 항목...

32bit kernel - 2

페이징 및 세그멘테이션 설정 이전에 페이징과 세그멘테이션에 대한 포스팅을 진행한 적이 있다. 페이징과 세그멘테이션을 소프트웨어적인 방법으로 구현하여 사용할 수도 있겠지만 으레 그러하듯 하드웨어적으로 구현된 것 보단 성능이 떨어진다. 그렇기 때문에 아키텍처 자체에서 페이징과 세그멘테이션을 지원한다. 페이징과 세그멘테이션을 활성화하기 위해서 우리가 살펴...

멀티태스킹 - 2

스케줄링 Task의 실행 순서를 정하는 것을 스케줄링이라고 한다. 가장 크게 나누면 두 개로 나눌 수 있다. 바로 선점형과 비선점형 스케줄링이다. 선점형 vs 비선점형 프로세스가 끝나기전에 다른 프로세스가 먼저 실행 할 수 있다면 선점형 현재 실행 중인 프로세스가 종료되기 전에 다른 프로세스가 먼저 실행될 수 없다면 비 선점형이다. 비선점형 스케줄링...

리눅스와 부트로더

64Bit 멀티코어 OS의 구조를 통해 OS의 구조에 대해서 공부하고 있는데 현재 상용 OS에서 역시 이러한 부트로더 구조를 이용하여 부팅을 하는가에 대해서 찾아보니 LINUX 커널 소스코드 내에서는 부트로더 역할을 하는 코드가 없고 GRUB2나 별도의 부트로더를 탑재해서 한다고 되어있다. 근데그럼 UBUNTU ISO 파일을 받아서 설치한다고 했을때 ...