sagiri
1.0.0
X86-64 멀티 코어 프로세서에서 실행할 수있는 간단한 운영 체제.
이것은 운영 체제 실험 과정에서 이루어진 나의 숙제입니다. 클래스는 32 비트 단일 코어 CPU의 운영 체제 설계에 대해서만 이야기하고 있으며 멀티 코어 프로세서에서 실행되는 운영 체제에 더 관심이 있기 때문에 X64 대칭 멀티 프로세서에 운영 체제를 작성하기로 결정했습니다.
우분투 16.04를 사용하여 개발되었습니다. 설치 종속성 :
apt install make gcc gdb qemu
달리다
make qemu

응용 프로그램에 대한 프로세스/스레드 API, 프로세스/스레드 생성 지원, 대기, 취소, 수면 및 기타 작업을 제공합니다.
프로세스 생성 중에 메모리 사본-쓰기 기술을 구현합니다.
다수의 CPU가 적절한 동기식 뮤트 메커니즘을 통해 지침을 실행할 때 레이스 조건을 피하십시오.
LAPIC/IOAPIC을 사용하여 멀티 코어 CPU의 시작 및 인터럽트 제어를 실현하십시오.
Thread_local 변수를 통한 특정 CPU와 관련된 저장 변수.
| 일련 번호 | 이름 |
|---|---|
| 0 | 포크 |
| 1 | 출구 |
| 2 | Thread_create |
| 3 | Thread_exit |
| 4 | Wait_Process |
| 5 | Wait_thread |
| 6 | get_pid |
| 7 | get_tid |
| 8 | kill_process |
| 9 | kill_thread |
| 10 | 잠 |
| 11 | 열려 있는 |
| 12 | 닫다 |
| 13 | 읽다 |
| 14 | 쓰다 |
| 15 | 풀리다 |
| 16 | readdir |
| 17 | 통계 |
| 18 | mkdir |
| 19 | rmdir |
| 20 | lseek |
| 스물 하나 | exec |
신호 메커니즘을 구현하십시오.
일반적으로 사용되는 파일 시스템에 대한 지원을 구현하십시오.
TCP/IP 프로토콜 스택.