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