스택과 큐
스택과 큐 이번에는 스택과 큐에 대해서 알아보도록 하겠다. 스택 스택은 FILO(First In Last Out) 구조의 자료구조로 책 더미를 생각하면 편하다. 스택에서 데이터 삽입하는 것을 PUSH, 데이터를 빼는 것을 POP이라고 한다. 먼저 들어간 것이 가장 아래에 쌓이기 때문에 가장 나중에 들어간 것이 먼저 나오게 된다. 큐 스택과는 ...
스택과 큐 이번에는 스택과 큐에 대해서 알아보도록 하겠다. 스택 스택은 FILO(First In Last Out) 구조의 자료구조로 책 더미를 생각하면 편하다. 스택에서 데이터 삽입하는 것을 PUSH, 데이터를 빼는 것을 POP이라고 한다. 먼저 들어간 것이 가장 아래에 쌓이기 때문에 가장 나중에 들어간 것이 먼저 나오게 된다. 큐 스택과는 ...
배열과 연결리스트 컴퓨터의 자료구조에 대해서 배울때 처음 언급되는 것은 변수 이후에는 배열이다. 이러한 배열은 메모리 동적할당에 대해서 배우고 나서 연결리스트와 구분되어 한번 말이 나오게된다. 다음의 그림을 보자 배열은 간단히 말해서 메모리상에서 연속되어 할당되는 것이고 연결리스트는 메모리에서는 떨어져서 할당되나 특정 링크를 통해 연결되어 있...
컴퓨터 기초 컴퓨터 기초가 좀 부족한가 싶어서 관련 내용 포스팅을 시작할까 한다. 사실 다 알고있는 내용이지만 그걸 막힘없이 설명할 수 있냐고하면 또 대답하기 애매해지는터라 파인만 선생님의 가르침에 따라 해당 내용을 전혀 모르는 사람도 이해할 수 있는 형태로 포스팅을 진행 해 볼까 한다. 목차 파트는 잦은 업데이트가 있을 예정이다, 또한 항목...
페이징 및 세그멘테이션 설정 이전에 페이징과 세그멘테이션에 대한 포스팅을 진행한 적이 있다. 페이징과 세그멘테이션을 소프트웨어적인 방법으로 구현하여 사용할 수도 있겠지만 으레 그러하듯 하드웨어적으로 구현된 것 보단 성능이 떨어진다. 그렇기 때문에 아키텍처 자체에서 페이징과 세그멘테이션을 지원한다. 페이징과 세그멘테이션을 활성화하기 위해서 우리가 살펴...
32bit kernel 리얼모드에서 부트로더를 이용해서 32bit 커널을 로드해서 구동했다면 32bit에서는 64bit 커널을 로드해오고 몇가지 필요한 설정들을 바꿔야한다. 이전에 모드에 대한 설정을 할때 32bit 보호모드의 경우 아래와 같은 특성이 있다고 설명했다. 윈도우나 Linux가 구동되는 기본 모드이다. 멀티태스킹, 세그멘테이션,...
스케줄링 Task의 실행 순서를 정하는 것을 스케줄링이라고 한다. 가장 크게 나누면 두 개로 나눌 수 있다. 바로 선점형과 비선점형 스케줄링이다. 선점형 vs 비선점형 프로세스가 끝나기전에 다른 프로세스가 먼저 실행 할 수 있다면 선점형 현재 실행 중인 프로세스가 종료되기 전에 다른 프로세스가 먼저 실행될 수 없다면 비 선점형이다. 비선점형 스케줄링...
멀티 태스킹 부트로더 다음에 바로 32bit kernel로 넘어가자니 멀티태스킹에 대해서 미리 언급해야 할것 같아서 포스팅한다. 물론 이 책에서는 64bit Kernel까지 넘어가서야 멀티태스킹에 대해서 논하지만 겹치는 부분이 좀 있기 때문에 이 부분을 먼저 언급하고자한다. 우리가 일상에서 멀티태스킹한다는 단어는 많이 사용한다. 멀티태스킹이라는 단어...
64Bit 멀티코어 OS의 구조를 통해 OS의 구조에 대해서 공부하고 있는데 현재 상용 OS에서 역시 이러한 부트로더 구조를 이용하여 부팅을 하는가에 대해서 찾아보니 LINUX 커널 소스코드 내에서는 부트로더 역할을 하는 코드가 없고 GRUB2나 별도의 부트로더를 탑재해서 한다고 되어있다. 근데그럼 UBUNTU ISO 파일을 받아서 설치한다고 했을때 ...
이전 코드에 이어서 계속해서 코드 분석에 들어가도록 하겠다. 부트 로더 파트는 계속해서 포스팅이 업데이트가 될 예정이니 언제 업데이트가 되었는지는 하단에 업데이트 날짜와 내역에 대해서 기재할 것이다. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; 함...
이전 코드에 이어서 계속해서 코드 분석에 들어가도록 하겠다. 부트 로더 파트는 계속해서 포스팅이 업데이트가 될 예정이니 언제 업데이트가 되었는지는 하단에 업데이트 날짜와 내역에 대해서 기재할 것이다. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; 화면을...