해킨토시 관련 게시판이 아닙니다 | 2번 |
---|
안녕하세요.
해킨 때문에 dsdt를 많이 보다 보니 _OSI와 OSYS에 대해서도 알게 되었습니다.
_OSI와 OSYS는 현재 어떤 운영체제로 부팅했는지를 알기 위해 사용됩니다.
_OSI는 운영체제가 제공하는 함수로, _OSI ("운영체제 이름") 이런 식으로 사용합니다.
괄호 안에 들어가는 값이 현재 부팅한 운영체제라면 true를 리턴합니다.
보통 \_SB.PCI0의 INI 함수에서 각 운영체제 이름별로 _OSI를 실행해 보고 이에 따라 OSYS 값을 설정합니다.
그런데 특이하게도 OSYS 값을 설정하는 부분에서
OSYS = 0x07D0 If (_OSI ("Linux")) { OSYS = 0x03E8 } If (_OSI ("Windows 2001")) { OSYS = 0x07D1 }
그리고 그 밑에 윈도우 버전별로 OSYS가 조금씩 증가합니다.
OSYS 값이 클수록 더 많은 기능이 활성화됩니다.
즉, Windows XP(Windows 2001)보다 최신 버전 리눅스에서 활성화되는 기능이 더 적은 거죠.
왜 이러지 하다가 이런 사실을 알게 되었습니다.
_OSI는 원래 이러라고 만든 게 아닙니다. _OSI 전에 _OS라는 게 이 역할을 했습니다.
그런데 _OS는 문제가 많았습니다. DSDT에 이런 식으로 쓰여 있는 운영체제가 아니면 제대로 작동하지 않습니다.
그래서 _OSI는 운영체제가 아닌 그 운영체제가 지원하는 기능을 확인하는 용도였습니다.
_OSI ("3.0 Thermal Model") 이런 식이죠.
하지만 _OSI가 나오고 얼마 되지 않아, M$가 일을 저질렀습니다. 바로 Windows 2001이라는 걸 만든 것이죠.
바이오스 제조사들도 이 방식을 따라했습니다.
그래서 _OSI는 어쩌다보니 _OS와 같은 역할을 하게 되었습니다.
그리고 리눅스는...
_OSI ("Windows 2001")에 true를 리턴하기 시작합니다. 자기 자신이 윈도우라고 바이오스를 속이는 거죠.
2009년 언젠가에 나온 리눅스 커널부터는 _OSI("Linux")에 false를 리턴하고 firmware bug라는 내용을 dmesg 로그에 남깁니다.
그리고 지금도 Windows 2020 Windows 2021 이런 게 나올 때마다 리눅스 커널에는 해당 윈도우 버전에 true를 리턴하도록 업데이트됩니다.
윈도우랑 리눅스는 호환되지 않는데도 이러는 이유는 이게 차라리 나아서입니다.
바이오스 제조사들은 알 수 없는 이유로 _OSI ("Linux")가 감지되면 많은 기능을 비활성화하도록 합니다.
그리고 리눅스에 대해서는 바이오스 테스트도 하지 않습니다. 분명히 리눅스 쓰는 사람이 거의 없어서겠죠. 그래서 _OSI ("Linux")가 true가 되면 ACPI Error가 쏟아져 나오는거죠.
이래서 어쩔 수 없이 리눅스는 호환되지도 않는 윈도우에 따라가게 되었습니다.
비록 사용하는 사람은 거의 없지만 그래도 리눅스 데스크톱을 사용하는 사람은 분명히 있습니다.
또, _OSI ("Linux") 이렇게 하면 옛날에 나온 리눅스 0.0.1이랑 최신 버전 (21/11/16 기준 5.15.2)이랑 구분할 수 없는 단점이 있어서 _OSI ("Linux 5"), _OSI ("Linux 4") 이런 식으로 리눅스 버전을 같이 명시해주면 좋겠다는 생각도 듭니다.
물론 원래 _OSI의 목적처럼 운영체제가 지원하는 기능을 확인하는 용도로 _OSI가 사용되면 좋겠지만, 이렇게 될 것 같지는 않습니다.
이런 의미에서 바이오스 제조사들이 리눅스에서도 한번 테스트해 주고 리눅스도 커널에 따라 _OSI ("Linux 5"), _OSI ("Linux 4") 이런 식으로 해서 리눅스가 윈도우를 따라가지 않아도 되는 날이 왔으면 합니다.
mswgen님의 새글 알림을 받으실려면 구독
제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|
Safari_18.1_for_macOS_Ventura_beta_1.dmg(619B9) 24/09/20일자 | 제로섬 | 24.09.2014:03 | 23 |
세퀘이아 15.1 beta4(24B5046f) 전체 프로그램 다운로드(24/09/2... | 제로섬 | 24.09.2005:37 | 82 |
windows & macOS / Install macOS Sequoia beta4 15.1_24B50... | 제로섬 | 24.09.2005:24 | 44 |
Apple Beta Releases 소식 (09/17일자) | 제로섬 | 24.09.1808:05 | 86 |
세퀘이아 15.0 정식(24A335) 전체 프로그램(24/09/17일자) +3 | 제로섬 | 24.09.1704:38 | 244 |
windows & macOS / Install macOS Sequoia 정식 15.0_24A335.... | 제로섬 | 24.07.1806:01 | 671 |
Apple macOS UniversalMac_15.0 정식 (24A335)복원IPSW (24/09/17... +3 | 제로섬 | 24.09.1020:58 | 160 |
Apple RC Releases 소식 24/09/10일자 | 제로섬 | 24.09.1011:27 | 233 |
Apple macOS UniversalMac_15.0 beta8 (24A5331b)복원IPSW (24/0... | 제로섬 | 24.08.3020:41 | 104 |
macOS Sonoma 14.7 RC2 (23H124) 전체 프로그램 다운로드(24/09/1... | 제로섬 | 24.08.3015:43 | 276 |
macOS Ventura 13.7 RC2 (22H123) 전체 프로그램 다운로드(24/09/... | 제로섬 | 24.08.3016:24 | 131 |
windows & macOS / Install macOS Sonoma RC2 14.7_23H124.d... +1 | 제로섬 | 23.10.1211:27 | 4867 |
windows & macOS / Install macOS Ventura RC2 13.7.0_22H123... +1 | 제로섬 | 23.10.1213:08 | 7723 |
Apple Beta Releases 소식 24/08/28일자 | 제로섬 | 24.08.2904:14 | 171 |
Apple 2024년 9월 9일 월요일, 첫 번째 가을 이벤트 & Glowti... +1 | 제로섬 | 24.08.2721:47 | 115 |
Apple M1/M2/M3 macOS Sequoia 15.1 beta4 (24B5046f)복원IPSW (2... | 제로섬 | 24.08.1320:14 | 125 |
Apple Public Releases for 소식 24/08/07일자 | 제로섬 | 24.08.0809:53 | 127 |
macOS Sonoma 14.6.1 정식 (23G93) 전체 프로그램 다운로드(24/08... +4 | 제로섬 | 24.07.3018:28 | 637 |
macOS Ventura 13.6.9 정식 (22G830) 전체 프로그램 다운로드(24/... | 제로섬 | 24.07.3018:21 | 241 |
macOS Monterey 12.7.6 정식 (21H1320) 전체 프로그램 다운로드 (... +2 | 제로섬 | 24.07.3018:04 | 190 |
Apple Public Releases for 소식 24/07/29일자 +3 | 제로섬 | 24.07.3014:14 | 115 |
Apple, macOS 15 Sequoia 공개 정보 +2 | 제로섬 | 24.07.0716:59 | 2992 |
Safari_18_정식 설치프로그램_macOS_Sonoma(619A63)&Ventura(... +1 | 제로섬 | 24.07.0619:09 | 2448 |
Apple M1/M2/M3 macOS Sonoma 14.6.1 정식 (23G93)복원IPSW (24/0... | 제로섬 | 24.06.1811:51 | 2266 |
비 지원 맥용 OpenCore-Legacy-Patcher 2.0.1 다운로드(24/09/17... +6 | 제로섬 | 23.06.0413:37 | 2.6만 |
Safari_17.6_for_Ventura&Monterey 정식 설치 프로그램 24/07... +1 | 제로섬 | 24.04.0717:28 | 3781 |
windows & macOS / Install macOS Sonoma 정식 14.6.1_22G93.... +1 | 제로섬 | 24.04.0520:26 | 3716 |
windows & macOS / Install macOS Ventura 정식 13.6.9_22G83... | 제로섬 | 24.04.0521:40 | 3499 |
windows & macOS / Install macOS Monterey 정식 12.7.6_21H1... | 제로섬 | 24.04.0522:27 | 3460 |
윈도우 11 23H2 ISO 다운로드 가능 +2 | Mactopia | 23.11.0423:27 | 1.6만 |
Windows에서 macOS 부팅 가능한 USB를 만드는 방법 +16 | 제로섬 | 23.10.0711:52 | 1.9만 |
windows & macOS / Install macOS Big Sur 11.7.10_20G1427.d... | 제로섬 | 23.07.2512:50 | 2.2만 |
여친 없는 엑팔인들을 위한 스팀 게임 몇 가지 나눔 합니다. +27 | 잠퉁이 | 23.03.0220:10 | 6.6만 |
최신 Windows 다운로드 +12 | Dokdo | 21.10.1703:35 | 4.6만 |
윈도우 필수 유틸 #1 - Hoax Eliminator 구라 제거기 +4 | Mactopia | 21.08.1017:08 | 4.4만 |
우분투 서버 설치하기 +3 | 매킨어렵 | 21.06.0404:29 | 3.5만 |
맥북프로 2014년형 업데이트 안됨 +2 | 해킨독립 | 24.09.1818:57 | 94 |
[에픽게임즈] The Last Stand: Aftermath (무료/무료) +2 | 잠퉁이 | 24.09.2000:11 | 104 |
[iOS] 사진 & 영상 보정, 블러 및 모자이크 어플 - Pix (인앱... +1 | 잠퉁이 | 24.09.2012:21 | 53 |
잠퉁이 | 24.09.2103:51 | 22 | |
잠퉁이 | 24.09.2103:49 | 33 | |
잠퉁이 | 24.09.2103:47 | 31 | |
잠퉁이 | 24.09.2103:45 | 26 | |
잠퉁이 | 24.09.2012:21 | 53 | |
잠퉁이 | 24.09.2012:19 | 45 | |
잠퉁이 | 24.09.2000:11 | 104 | |
잠퉁이 | 24.09.2000:09 | 94 | |
제로섬 | 24.09.2014:03 | 23 | |
제로섬 | 24.09.2005:37 | 82 | |
제로섬 | 24.09.2005:24 | 44 | |
잠퉁이 | 24.09.1821:39 | 76 | |
wmy0317 | 24.09.1821:35 | 121 | |
해킨독립 | 24.09.1818:57 | 94 | |
제로섬 | 24.09.1808:05 | 86 | |
Nelson | 24.09.1711:45 | 109 | |
제로섬 | 24.09.1704:38 | 244 | |
제로섬 | 24.07.1806:01 | 671 | |
Nelson | 24.09.1621:58 | 60 | |
제로섬 | 24.09.1608:54 | 329 | |
해킨독립 | 24.09.1518:53 | 137 | |
잠퉁이 | 24.09.1305:34 | 101 | |
잠퉁이 | 24.09.1305:24 | 73 | |
잠퉁이 | 24.09.1306:30 | 85 | |
잠퉁이 | 24.09.1306:14 | 75 | |
잠퉁이 | 24.09.1306:11 | 50 | |
잠퉁이 | 24.09.1306:03 | 77 | |
잠퉁이 | 24.09.1117:54 | 82 | |
잠퉁이 | 24.09.1117:51 | 92 | |
잠퉁이 | 24.09.1003:22 | 94 | |
잠퉁이 | 24.09.1003:19 | 104 | |
잠퉁이 | 24.09.1003:16 | 96 | |
잠퉁이 | 24.09.1003:11 | 74 | |
잠퉁이 | 24.09.1003:08 | 74 | |
잠퉁이 | 24.09.1003:06 | 50 | |
제로섬 | 24.09.1020:58 | 160 | |
제로섬 | 24.09.1011:27 | 233 | |
Mactopia | 24.09.1011:16 | 107 | |
제로섬 | 24.09.1002:10 | 61 | |
잠퉁이 | 24.09.0800:24 | 91 | |
잠퉁이 | 24.09.0707:36 | 86 | |
잠퉁이 | 24.09.0707:34 | 64 | |
잠퉁이 | 24.09.0602:31 | 71 | |
잠퉁이 | 24.09.0602:29 | 99 | |
잠퉁이 | 24.09.0602:23 | 58 | |
잠퉁이 | 24.09.0602:21 | 62 | |
잠퉁이 | 24.09.0600:00 | 132 | |
Mactopia | 24.09.0509:15 | 84 | |
잠퉁이 | 24.09.0502:37 | 90 | |
잠퉁이 | 24.09.0500:31 | 76 | |
잠퉁이 | 24.09.0500:29 | 95 | |
잠퉁이 | 24.09.0411:56 | 79 | |
잠퉁이 | 24.09.0411:55 | 73 | |
잠퉁이 | 24.09.0411:54 | 56 | |
나일롱 | 24.09.0410:13 | 131 | |
잠퉁이 | 24.09.0312:13 | 94 | |
잠퉁이 | 24.09.0303:48 | 68 | |
잠퉁이 | 24.09.0303:44 | 104 | |
잠퉁이 | 24.09.0303:42 | 64 | |
Mactopia | 24.09.0208:19 | 161 | |
잠퉁이 | 24.09.0202:37 | 45 | |
잠퉁이 | 24.09.0202:35 | 66 | |
잠퉁이 | 24.09.0202:34 | 82 | |
잠퉁이 | 24.08.3104:12 | 89 | |
잠퉁이 | 24.08.3104:07 | 96 | |
잠퉁이 | 24.08.3104:05 | 71 | |
잠퉁이 | 24.08.3012:02 | 107 | |
잠퉁이 | 24.08.3001:48 | 137 | |
잠퉁이 | 24.08.3001:46 | 90 | |
잠퉁이 | 24.08.3001:42 | 97 | |
잠퉁이 | 24.08.3001:40 | 84 | |
잠퉁이 | 24.08.3001:22 | 163 | |
잠퉁이 | 24.08.3000:02 | 106 | |
제로섬 | 24.08.3020:41 | 104 | |
제로섬 | 24.08.3015:43 | 276 | |
제로섬 | 24.08.3016:24 | 131 | |
제로섬 | 24.08.3015:27 | 157 | |
제로섬 | 23.10.1211:27 | 4867 | |
제로섬 | 23.10.1213:08 | 7723 | |
잠퉁이 | 24.08.2900:39 | 57 |