나만의 운영 체제를 작성하는 방법을 안내하고 있습니다. 먼저 2 단 부트 로더를 쓰는 것으로 시작합니다. 2 단계에서 첫 번째 부트 로더가로드됩니다.이 가이드에서는 플로피 이미지 용으로 FAT12 파일 시스템을 사용합니다. 따라서 루트 디렉토리 테이블에서 읽고 있습니다. 파일이 존재하고 FAT로 가서 파일 클러스터를 얻으려면 .... 등. 내 문제는 내 코
학습 및 탐색을위한 새로운 운영 체제를 작성 중입니다. 그리고 연결된 장치 (네트워크, 키보드, HDD 및 기타 장치)를 검색 할 수 있기를 바랍니다. 이것은 적절한 드라이버를 설치하는 첫 번째 단계로 사용됩니다. 저는 인터넷에서 잠시 동안 찾으려고했지만 그게 도움이되지 않습니다.
저는 QEMU와 GDB를 사용하여 취미로 OS를 개발하고 있습니다.하지만 성능 문제가 있습니다. 따라서 어떤 기능을 최적화해야하는지 알고 싶습니다. 그래서 기본적으로, 내 요구는 알고 주로 : 하는 내 커널이 가장 많은 시간을 소비 작동합니다. 몇 번 기능 는 이라고 당신은 내가 어떻게 할 수 있습니다 알고 있습니까? 나는 Bochs를 사용하는 해결책도 받
현재 운영 체제 용으로 32 비트 커널을 작성하고 있지만 문제가 발생했습니다. here에서 방법을 사용하여 화면을 취소하려고 Bochs와 다음과 같은 메시지와 충돌 : [CPU] 프리 페치 : getHostMemAddr 직접 읽기를 거부, pAddr = 0xA0000을 clear_screen32 방법 (RAN 보호 모드에서) : ;==============
현재 커널을 개발 중이며 시스템 호출을 구현할 때 신비한 문제가 발생합니다. 다음과 같이 0x80th 인터럽트 처리기를 작성합니다. sys_call_s:
pushad
call sys_call
popad
iret
"sys_call"은 실제 작업을 수행하는 C 함수의 이름입니다. 문제는 : "int 0x80"의 다음 명령
그래서 나는 최소한의 OS로 많은 것을하지 않습니다. 32 비트 보호 모드에서 기본 C 커널을로드하는 부트 로더가 있습니다. printf과 같은 것을 사용할 수 있도록 C 라이브러리에 어떻게 포팅합니까? GNU C 라이브러리를 사용하려고합니다. 어디서나 튜토리얼이 있습니까?
나는 아주 간단한 질문이있다. 테스트 할 수있는 환경이 없기 때문에 스스로 대답을 찾을 수 없습니다. 페이지 가장자리에서 4 바이트를 액세스하면 어떻게됩니까? mov eax, dword [0x100000+4095]
내가하지 않으면 내가 0x101000 페이지에 액세스 할 때 상위 3 바이트 될 것입니다 무엇? 도와주세요.