XScreen Saver(스크린 세이버)
XScreenSaver원저작자 | 제이미 자윈스키 |
---|---|
개발자 | 제이미 자윈스키 |
초기 릴리즈 | 1992년 8월 | ; 전(
안정된 릴리스 | 6.02 / 2021년 10월 [1] , 전( |
기입처 | ANSI C, X11, OpenGL |
운영 체제 | Unix, macOS, iOS, Android |
유형 | 스크린세이버 |
면허증. | MIT 라이선스[2] |
웹 사이트 | jwz.org/xscreensaver/ |
XScreenSaver는 Unix, macOS, iOS 및 Android 운영체제용 [3]240개 이상의 스크린세이버 무료 오픈소스 컬렉션입니다.1992년에 제이미 자윈스키에 의해 만들어졌고, 지금도 그가 관리하고 있으며,[4] 1년에 몇 번 새로운 발매가 나온다.
플랫폼
X Window System을 실행하는 무료 소프트웨어 및 오픈 소스 Unix와 유사한 운영 체제(Linux 및 FreeB 등)SD)는 XScreen Saver를 [citation needed]거의 독점적으로 사용합니다.이러한 시스템에서는 화면 저장 및 잠금 프레임워크용 패키지와 디스플레이 모드용 패키지가 다소 임의로 [5]구분되어 있습니다.
Macintosh 시스템에서 XScreenSaver는 내장된 MacOS 화면 보호기와 함께 작동합니다.
iOS 시스템에서 XScreenSaver는 모든 해킹을 전체 화면으로 실행할 수 있는 독립 실행형 앱입니다.
Android 시스템에서 XScreenSaver 디스플레이 모드는 일반 화면 보호기(Android는 "Daydreams"라고도 함) 또는 라이브 벽지로 작동합니다.
Microsoft Windows의 정식 버전은 없으며, 개발자는 누구도 이 버전을 이식하는 것을 권장하지 않습니다.저자는 MS를 '악랄하고 약탈적이며 반경쟁적인 비즈니스 [6]관행을 가진 회사'로 간주하며 넷스케이프 내비게이터의 원저자 중 한 명으로 제1차 브라우저 전쟁 당시 MS의 행태에 대해 개인적인 원한을 품고 있다고 말한다.
소프트웨어 아키텍처
XScreenSaver 데몬은 아이돌 상태 검출, 화면 블랭크 및 잠금, 디스플레이 모드 부팅을 담당합니다.디스플레이 모드(이력 사용법 "디스플레이 해킹"에서 "핵"으로 표기)는 각각 독립 실행형 프로그램입니다.
이는 디스플레이 모드가 화면 잠금 프레임워크와 다른 프로세스로 샌드박스된다는 점에서 중요한 보안 기능입니다.즉, 그래픽 디스플레이 모드 중 하나에서 프로그래밍 오류가 발생해도 화면 보관함 자체를 손상시킬 수 없습니다(예: 디스플레이 모드에서 충돌이 발생해도 화면 잠금이 해제되지 않습니다).
또, 서드 파티제의 스크린 세이버는, 외부로부터 제공되는 창상에 렌더링 할 수 있는 한, 어떠한 언어나 그래픽 라이브러리에서도 쓸 수 있습니다.
이력 및 휴대성을 위해 포함된 해크는 모두 ANSI C로 기술되어 있습니다.이들 중 절반 가량은 X11 API를 사용하고 있으며, 절반 가량은 OpenGL 1.3 API를 사용하고 있습니다.
XScreen Saver에는 코드 베이스를 포킹하고 다른 플랫폼을 대상으로 해 해크를 다시 쓰는 대신 다수의 호환성 계층이 포함되어 있습니다.
- X11 기반 해킹을 MacOS 및 iOS에서 네이티브로 실행할 수 있도록 XScreenSaver에는 코코아(jwxyz)[7] 위에 구축된 X11 API의 완전한 구현이 포함되어 있습니다.
- OpenGL ES만을 지원하는 iOS 및 Android 시스템에서 OpenGL 1.3 기반 해킹을 네이티브로 실행할 수 있도록 XScreenSaver는 OpenGL ES 1.0("jwzgles")[7] 위에 내장된 OpenGL 1.3 API를 포함하고 있습니다.
- 또한 X11 기반 해킹을 iOS 및 Android에서 네이티브로 실행할 수 있도록 XScreenSaver에는 OpenGL ES 1.0에 [8]관한 X11 API 구현도 포함되어 있습니다.
보안.
디스플레이 모드 샌드박스에 더해 XScreenSaver 데몬은 가능한 한 적은 라이브러리와 링크합니다.특히 GTK나 KDE와 같은 GUI 프레임워크에 대한 링크는 하지 않고 잠금 해제 대화 상자를 렌더링하기 위해 원시 Xlib만 사용합니다.
최근 몇 년 동안 일부 Linux 디스트리뷰션에서는 XScreen Saver에 [9]포함된 프레임워크 대신 gnome-screensaver 또는 kscreensaver 스크린 블랭킹 프레임워크를 기본적으로 사용하기 시작했습니다.2011년, 고놈스크린세이버는 메이트스크린세이버와 시나몬스크린세이버로 분기되었다.이러한 프레임워크의 이전 버전은 여전히 XScreenSaver의 화면 보호기 컬렉션에 의존했습니다.이것은 [10]패키지의 90%를 넘습니다.그러나 2011년 Gnome-screensaver 버전 3은 스크린세이버 지원을 완전히 중단하고 단순한 화면 [11]블랭크만 지원하며 2018년부터 Linux Mint의 시나몬 스크린세이버 4.0.8은 XScreenSaver 해크를 지원하지 않습니다.[12]
XScreenSaver를 다른 화면 잠금 프레임워크로 대체한 Linux 디스트리뷰션에서는 현저한 보안 문제가 발생하고 있습니다.그 외의 프레임워크에서는, 패스워드 없이, 예를 들면, 락커가 크래쉬 [13][14][15][16][17][18][19]할 때까지 키를 누르기만 하면, 화면의 잠금을 해제할 수 있는 시큐러티 버그의 이력이 있습니다.
2004년, Zawinski는 바로 이러한 종류의 버그를 피하기 위해 XScreen Saver에서 내려진 아키텍처 결정에 대해 썼고, 2015년에는 "Linux에서 XScreen Saver를 실행하고 있지 않다면 화면이 [21]잠기지 않는다고 가정해도 안전합니다."라고 일축했다.
디스플레이 모드
포함된 해킹은 단순한 2D 사이키델리아에서 복잡한 수학 원리의 3D 시연, 다른 컴퓨터 시스템의 시뮬레이션, 영화에서 아티팩트 및 효과의 재현에 이르기까지 매우 다양합니다.
많은 새로운 해커들이 현대 컴퓨터의 힘을 최대한 활용하지만, 프로젝트의 연대는 오래된 해커들 중 일부는 원래 훨씬 덜 강력한 컴퓨터를 위해 작성되었기 때문에 현대인의 눈에는 오래되어 보일 수 있다는 것을 의미합니다.
해킹의 예는 다음과 같습니다.[3]
- 아틀란티스 – 고래와 돌고래를 보여주는 OpenGL 애니메이션.
- BSOD – Microsoft Windows 블루 스크린 오브 데스, Linux 커널 패닉, Darwin 크래시, Amiga "Guru 명상" 오류, 슬픈 Mac 등 많은 컴퓨터 시스템에서 발생한 죽음의 변종 가짜 화면을 보여줍니다.
- Apple2 – Apple II 컴퓨터를 시뮬레이션하여 사용자가 간단한 BASIC 프로그램을 입력하고 실행하는 모습을 보여줍니다.명령줄에서 실행할 때는 완전히 작동하는 터미널 에뮬레이터(인광체)입니다.
- 바코드 – 여러 색상의 바코드가 화면을 스크롤합니다.
- 플로우 – 이상한 매력의 3D 디스플레이.
- 플라잉 토스터 – 3D 토스터는 After Dark 스크린세이버에서 영감을 얻어 날아다닙니다.
- 기어 – 맞물린 기어와 유성 기어의 OpenGL 애니메이션입니다.
- GLMatrix – 매트릭스 3부작에서 볼 수 있는 "디지털 레인" 타이틀 시퀀스와 유사한 OpenGL 애니메이션.
- 분자 – 일련의 일반적인 약물 및 기타 분자의 공간 채우기 또는 볼 앤 스틱 모델을 보여주는 OpenGL 애니메이션으로, 이 중 38개(38)가 내장되어 있습니다.또한 입력으로 파일에 있는 PDB(Protein Data Bank) 또는 디렉토리에 있는 파일을 읽을 수도 있습니다.
- Penrose – 화면을 컬러 타일로 주기적으로 타일링합니다.
- 스포트라이트 – James Bond 영화 오프닝 시퀀스 스타일로 데스크톱 전체에 감동적인 스포트라이트를 제공합니다.
- Sproingies – 비디오 게임 Q*bert 스타일의 애니메이션.
- 웹 콜라주– 웹에서 발견된 랜덤 이미지에서 콜라주를 만듭니다.
- XAnalog TV – 아날로그 브라운관 TV 수상기를 시뮬레이트합니다(시각적 왜곡이나 수신 문제 등).
- XPlanet – 실시간으로 업데이트되는 행성 및 기타 천체를 그립니다.
- XMatrix – 매트릭스 3부작에서 볼 수 있는 "디지털 레인" 시퀀스와 유사한 애니메이션.
포함된 해킹 중 일부는 데모센에 의해 생성된 데모 효과와 매우 유사합니다.
- Boing – 사상 최초의 Amiga 데모라고 여겨지는 1984년 프로그램을 기반으로 빨간색과 흰색의 튀는 공을 보여줍니다.
- 범프 – 전체 화면 2D 범프 매핑 구현.
- 메타볼 – 또 다른 일반적인 데모 효과.
- Moire2 – 이전 Amiga 데모에서 흔히 볼 수 있는 것과 유사한 간섭 원 이동.
- ShadeBobs – 오래된 Amiga 데모에서 흔히 볼 수 있는 또 다른 효과.
- XFlame – 필터 기반 화재 효과로, 화염 효과라고도 합니다.
「 」를 참조해 주세요.
XScreenSaver는 sleep 모드로 제공되었습니다. 2017년 로테르담의 헤트 니우에 연구소(Het Nieuwe Institute)에서 Rafaél Rozendal이 큐레이션한 갤러리 전시회 The Art of the Screensaver.[22]
레퍼런스
- ^ "Changelog". Retrieved 1 December 2021.
- ^ "Debian XScreenSaver copyright list". 24 December 2020. Retrieved 24 December 2020.
- ^ a b "List of screen savers included in the XScreenSaver collection". 8 December 2020. Retrieved 24 December 2020.
- ^ "XScreenSaver release history". 8 December 2020. Retrieved 24 December 2020.
- ^ "Debian XScreenSaver package list". 24 December 2020. Retrieved 24 December 2020.
- ^ "XScreenSaver: Windows Version". www.jwz.org. Retrieved 24 December 2020.
- ^ a b "jwz.org blog post about the iOS port". 19 June 2012. Retrieved 24 December 2020.
- ^ "jwz.org blog post about the Android port". 23 May 2016. Retrieved 24 December 2020.
- ^ "XScreenSaver FAQ regarding KDE/Gnome". Retrieved 24 December 2020.
- ^ "XScreenSaver source code distribution". 8 December 2020. Retrieved 24 December 2020.
- ^ Campagna, Giovanni (21 March 2011). "Re: What is the status of the screensaver in GNOME3?". gnome-shell (Mailing list).
- ^ "Linux Mint 19.1 Announcement". 20 December 2018. Retrieved 24 December 2020.
- ^ "Gnome-Screensaver Key Flood". 16 April 2014. Retrieved 24 December 2020.
- ^ "Cinnamon-Screensaver Key Flood". 22 August 2014. Retrieved 24 December 2020.
- ^ "CVE-2014-1949, Cinnamon-Screensaver Lock Bypass". 16 January 2015. Retrieved 24 December 2020.
- ^ "Mandriva Security Advisory MDVSA-2015:162". 29 March 2015. Retrieved 24 December 2020.
- ^ "CVE-2015-7496, Hold ESC to unlock Gnome-session GDM". 24 November 2015. Retrieved 18 January 2021.
- ^ "CVE-2019-3010, Privilege Escalation in Oracle Solaris XScreenSaver fork". 23 October 2019. Retrieved 24 December 2020.
- ^ "Cinnamon-screensaver lock by-pass via the virtual keyboard". 15 January 2021. Retrieved 15 January 2021.
- ^ "XScreenSaver: On Toolkit Dialogs". 19 October 2004. Retrieved 24 December 2020.
- ^ "jwz.org blog post about Gnome security bugs". 4 April 2015. Retrieved 24 December 2020.
- ^ "Sleep Mode: The Art of the Screensaver: Jamie Zawinski Interview". 27 January 2017. Retrieved 24 December 2020.
외부 링크
- Wikimedia Commons의 XScreenSaver 관련 미디어
- 공식 웹사이트
- "XScreenSaver". Freecode.