์ด ๋ฌธ์์ ์๋ณธ์ ์ธ๋ถ ์ํค์์ ๊ฐ์ ธ์์ต๋๋ค.
1. Windows Runtime[ํธ์ง]
2012๋
Windows 8์์ ์ฒ์ ๋์จ API ์
(set)์ด๋ฉฐ ์ค์ฌ์ WinRT๋ผ๊ณ ๋ ํ๋ค. ๋ชจ๋ฐ์ผ ํ๊ฒฝ์ ๋์ํ๊ธฐ ์ํ์ฌ ๋ง๋ค์ด์ก๋ค. ๋ชจ๋ WinRT API๋ C++๋ก ์์ฑ๋์์ผ๋ฉฐ, ์ด๋ ์์ญ๋
์ ์ ๋ง๋ค์ด์ง Win32 API๊ฐ C์ธ์ด๋ก ์์ฑ๋์ด ๊ฐ์ฒด์งํฅ์ ํ๋ก๊ทธ๋๋ฐ์ด ํ๋ค์๋ ๋จ์ ์ ํด๊ฒฐํ๋ค.(๋ฌผ๋ก MFC๋ผ๋ C++ ๋ํผ๊ฐ ๋์ค๊ธด ํ์ง๋ง ์ด๊ฒ๋ ๋ฒ๋ ค์ง์ง 10๋
์ด ๋์ด ์ธ ๋๋ง๋ค ์ฌ๋ ๋ฏธ์น๊ฒ ๋ง๋ ๋ค.) ๋ํ C++๋ก ์์ฑ๋์ด์๋ค๋ ๊ฒ์ ๋ชจ๋ WinRT API๊ฐ ๋ค์ดํฐ๋ธ ๋ฐํ์์ด๋ผ๋ ๊ฒ์ด๊ณ , ์ด๋ ์๋์ ์ ๋ ฅ ์๋ชจ์ ์ด๋์ด ๋๋ ๊ตฌ์กฐ์ด๋ค.
https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/29/43/2626.Win8%20WinRT%20Architecture.png
WinRT API๋ ๋ค์๊ณผ ๊ฐ์ ๊ตฌ์กฐ๋ก ๋์ด์์ผ๋ฉฐ, ๋ค์ดํฐ๋ธ ๊ฐ๋ฐ์๋ฅผ ์ํด C/C++๋ฅผ ์ง์ํ๊ณ , ๋ท๋ท ๊ฐ๋ฐ์๋ฅผ ์ํด C#/Visual Basic, ์น ๊ฐ๋ฐ์๋ฅผ ์ํ์ฌ JavaScript๋ก ํ๋ก๊ทธ๋๋ฐ์ ํ ์ ์๋, ์ฌ๋ฌ ์ธ์ด๋ฅผ ์ง์ํ๋ ๋ฐํ์ API์ด๋ค. ๋ํ, ์์ฃผ ์ฐ๋ ์ฝ๋๋ฅผ Windows Runrtime Library(์ค์ฌ์ WRL)๋ผ๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ก ๋ง๋ค๋ฉด, ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ๋ง๋ ์ธ์ด์ ์๊ด์์ด C++, C#, Visual Basic, JavaScript ๋ชจ๋ ํธ์ถํ ์ ์๋ค. ์๋ฅผ ๋ค์ด C++๋ก ๋ง๋ค์ด์ง ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ํฌํจ์ํจ ํ ์ฌ๊ธฐ ์์ C++ ํจ์๋ฅผ JavaScript๋ก ํธ์ถํ ์ ์๋ค. ๋ํ, Windows RT ์ถ์์ ํจ๊ป ๋ชจ๋ฐ์ผ์์ ๊ฐ์ธ๋ฅผ ๋ณด์ด๋ ARM์ ์ง์ํ๋ค. ๋ชจ๋ Windows Runtime ์ฑ์ ๋ง์ดํฌ๋ก์ํํธ ์คํ ์ด(๊ตฌ Windows ์คํ ์ด)์์๋ง ๋ฐฐํฌํ ์ ์๋ค. ์ด๋ iOS์ ๊ฐ์ ์ ์ฑ ์ด๋ค. ๋ชจ๋ฐ์ผ์์๋ ๋น ๋ฅด๊ฒ ๋๋ฆฌ๊ธฐ ์ํด UI ์ฐ๋ ๋์ ๋ ผ-UI ์ฐ๋ ๋๊ฐ ๋ถ๋ฆฌ๋์ด ์๊ณ , NT ์ปค๋์ ํญ์ UI ์ฐ๋ ๋๋ฅผ ์ต์ฐ์ ์ผ๋ก ๋๋ฆฐ๋ค. ๊ทธ๋ฆฌ๊ณ ์ฒ๋ฆฌ์๊ฐ์ด 50ms๊ฐ ๋์ด๊ฐ๋ ๋ชจ๋ WinRT ํจ์๋ ๋น๋๊ธฐ์์ผ๋ก "๊ฐ์ ๋ก" ์ฐ๊ฒ ํ์ฌ ๋ฉํฐ์ฐ๋ ๋ ์ฝ๋ฉ์ ๊ฐ์ ํ๋ค.
Windows 8 ์ถ์ ๋์๋ Windows Rumtime ์ฑ์ Windows 8/RT์๋ง ์ธ ์ ์๊ณ , Windows Phone 8์๋ ์ข ์ ์ ์ค๋ฒ๋ผ์ดํธ ๊ธฐ์ ์ ์จ์ผ ํ๋ค. ํ์ง๋ง Windows 8.1/Windows Phone 8.1์ด ๋์จ ํ์ ๋๋ถ๋ถ์ ๋ก์ง ์ฝ๋๋ฅผ ๊ณต์ ํ๋ฉด์ UI๋ง ์ฌ์ค๊ณํ๋ฉด ๋๋ค. ์ด๋ ๋ OS์ ์ปค๋์ด ๊ฐ๊ธฐ ๋๋ฌธ์ API์ ์๋น๋ถ๋ถ์ ๊ณต์ ํ ์ ์๊ธฐ ๋๋ฌธ์ด๋ค.
2015๋ Windows 10์ด ์ถ์๋ ์ดํ WinRT๊ฐ Universal Windows Platform์ผ๋ก ๋์ฒด๋๋ฉด์ ์กด์๋๊ณ ์๋ค.
https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/29/43/2626.Win8%20WinRT%20Architecture.png
WinRT API๋ ๋ค์๊ณผ ๊ฐ์ ๊ตฌ์กฐ๋ก ๋์ด์์ผ๋ฉฐ, ๋ค์ดํฐ๋ธ ๊ฐ๋ฐ์๋ฅผ ์ํด C/C++๋ฅผ ์ง์ํ๊ณ , ๋ท๋ท ๊ฐ๋ฐ์๋ฅผ ์ํด C#/Visual Basic, ์น ๊ฐ๋ฐ์๋ฅผ ์ํ์ฌ JavaScript๋ก ํ๋ก๊ทธ๋๋ฐ์ ํ ์ ์๋, ์ฌ๋ฌ ์ธ์ด๋ฅผ ์ง์ํ๋ ๋ฐํ์ API์ด๋ค. ๋ํ, ์์ฃผ ์ฐ๋ ์ฝ๋๋ฅผ Windows Runrtime Library(์ค์ฌ์ WRL)๋ผ๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ก ๋ง๋ค๋ฉด, ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ๋ง๋ ์ธ์ด์ ์๊ด์์ด C++, C#, Visual Basic, JavaScript ๋ชจ๋ ํธ์ถํ ์ ์๋ค. ์๋ฅผ ๋ค์ด C++๋ก ๋ง๋ค์ด์ง ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ํฌํจ์ํจ ํ ์ฌ๊ธฐ ์์ C++ ํจ์๋ฅผ JavaScript๋ก ํธ์ถํ ์ ์๋ค. ๋ํ, Windows RT ์ถ์์ ํจ๊ป ๋ชจ๋ฐ์ผ์์ ๊ฐ์ธ๋ฅผ ๋ณด์ด๋ ARM์ ์ง์ํ๋ค. ๋ชจ๋ Windows Runtime ์ฑ์ ๋ง์ดํฌ๋ก์ํํธ ์คํ ์ด(๊ตฌ Windows ์คํ ์ด)์์๋ง ๋ฐฐํฌํ ์ ์๋ค. ์ด๋ iOS์ ๊ฐ์ ์ ์ฑ ์ด๋ค. ๋ชจ๋ฐ์ผ์์๋ ๋น ๋ฅด๊ฒ ๋๋ฆฌ๊ธฐ ์ํด UI ์ฐ๋ ๋์ ๋ ผ-UI ์ฐ๋ ๋๊ฐ ๋ถ๋ฆฌ๋์ด ์๊ณ , NT ์ปค๋์ ํญ์ UI ์ฐ๋ ๋๋ฅผ ์ต์ฐ์ ์ผ๋ก ๋๋ฆฐ๋ค. ๊ทธ๋ฆฌ๊ณ ์ฒ๋ฆฌ์๊ฐ์ด 50ms๊ฐ ๋์ด๊ฐ๋ ๋ชจ๋ WinRT ํจ์๋ ๋น๋๊ธฐ์์ผ๋ก "๊ฐ์ ๋ก" ์ฐ๊ฒ ํ์ฌ ๋ฉํฐ์ฐ๋ ๋ ์ฝ๋ฉ์ ๊ฐ์ ํ๋ค.
Windows 8 ์ถ์ ๋์๋ Windows Rumtime ์ฑ์ Windows 8/RT์๋ง ์ธ ์ ์๊ณ , Windows Phone 8์๋ ์ข ์ ์ ์ค๋ฒ๋ผ์ดํธ ๊ธฐ์ ์ ์จ์ผ ํ๋ค. ํ์ง๋ง Windows 8.1/Windows Phone 8.1์ด ๋์จ ํ์ ๋๋ถ๋ถ์ ๋ก์ง ์ฝ๋๋ฅผ ๊ณต์ ํ๋ฉด์ UI๋ง ์ฌ์ค๊ณํ๋ฉด ๋๋ค. ์ด๋ ๋ OS์ ์ปค๋์ด ๊ฐ๊ธฐ ๋๋ฌธ์ API์ ์๋น๋ถ๋ถ์ ๊ณต์ ํ ์ ์๊ธฐ ๋๋ฌธ์ด๋ค.
2015๋ Windows 10์ด ์ถ์๋ ์ดํ WinRT๊ฐ Universal Windows Platform์ผ๋ก ๋์ฒด๋๋ฉด์ ์กด์๋๊ณ ์๋ค.
1.1. C++[ํธ์ง]
๋ค์ดํฐ๋ธ ์ฑ์ ๋ง๋ค๊ธฐ ์ํด ๊ฐ์ฅ ์ ํธ๋๋ ์ธ์ด์ด๋ค. C๊ฐ ๋ ๋น ๋ฅด๊ธฐ ํ์ง๋ง ๊ฐ์ฒด ์งํฅ ๊ฐ๋
์ด ์์ด ์ฑ ๊ฐ๋ฐ์ ํ๋ค์ด C++์ ์ด๋ค. UI๋ C#, Visual Basic์์๋ ๊ฐ์ด ์ฐ๋ XAML์ด๋ ์ธ์ด๋ฅผ ์ฐ๋๋ฐ, ์ด๋ ๋ฐ์คํฌํ ๋ท๋ท WPF ํ๋ก๊ทธ๋จ์ ๋ง๋ค๊ธฐ ์ํด ๋ง๋ค์ด์ง ๋งํฌ์
์ธ์ด์ด๋ค. ์ด๋ฅผ ํตํด UI๋ฅผ ๋ง๋ค๋ ค๊ณ Win32 API์ MFC๋ฅผ ์ธ ๋ ์๊ฐ๋๋ ์
๋ชฝ๊ณผ ๊ฐ์ ๊ฒฝํ์ ๋ง์ด ๋ ์ ์์๋ค. ๊ธฐ์กด Win32 ํฌํ
์ ํธํ๊ฒ ํ๊ธฐ ์ํด Win32 API์ ์๋ธ์
์ WinRT์๋ ๊ทธ๋๋ก ์ฌ์ฉํ ์ ์๊ณ , ๊ฒ์์ ์ํ์ฌ DirectX 11.1 API๋ฅผ ์ง์ํ๋ค. ํ์ง๋ง ํ์ฌ ์ํฉ์ผ๋ก ๋ณผ ๋, C++์ด ์ฌ์ฉ๋๋ ๊ฒฝ์ฐ๋ ๋ณดํต ๊ฒ์ ๋๋ ์๋ C++ ์ฝ๋๋ฅผ ์ฌํ์ฉํ๊ฑฐ๋, ์๋๊ฐ ๊ทนํ ์ค์ํ ๊ฒฝ์ฐ๋ฅผ ๋นผ๋ฉด C++๋ฅผ ์ฃผ๋ก ์ฌ์ฉํ๋ ๊ฒฝ์ฐ๋ ์๋ ๊ฒ ๊ฐ๋ค. ์ฃผ์ํ ์ ์ C++ ์ฝ๋๊ฐ ํฌํจ๋๋ฉด ๋น๋๋ฅผ ํ ๋ x86, x64, ARM์ ๊ฐ๊ฐ ๋น๋ํด์ Windows Store์ ์ ์ถํด์ผ ํ๋ค๋ ๊ฒ์ด๋ค.
1.1.1. Win32[ํธ์ง]
Windows API์ Windows Runtime์ ๋ชจ๋ C, C++ ๊ฐ๋ฐ์ ์ํ ํค๋์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ ๊ณตํ๋ค. ๊ทธ๋ฌ๋ Windows Runtime ์์๋ง ์ถ๊ฐ๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๊ฐ ์ผ๋ถ ์กด์ฌํ๋ฉฐ ์ด ์ธํฐํ์ด์ค๋ฅผ ์ฌ์ฉ ํ ๋ UWP ์ฑ์ ๋ฐ๋ก ์ฌ์ฉํ๋ฉด ๋์ง๋ง Win32์ ๊ฒฝ์ฐ ๊ธฐ๋ณธ์ ์ผ๋ก COM ์ธํฐํ์ด์ค๋ฅผ ์ฌ์ฉํ์ฌ์ผ ํ๋ค.
๋ค๋ง Windows Gaming Input ์ ๊ฐ์ด Windows Runtime์์๋ง ์ฌ์ฉ์ด ๊ฐ๋ฅํ ์ธํฐํ์ด์ค๊ฐ ์์ผ๋ ์ผ๋ถ ๊ฐ๋ฐ์๋ค์ ์์ฒญ์ผ๋ก TH1 ์ดํ COM์ ์ฌ์ฉํ์ง ์๊ณ Include๋ง์ผ๋ก ์ฌ์ฉํ ์ ์๋๋ก ๋ณ๊ฒฝ๋ ๊ฒฝ์ฐ๊ฐ ์๋ค.
๋ค๋ง Windows Gaming Input ์ ๊ฐ์ด Windows Runtime์์๋ง ์ฌ์ฉ์ด ๊ฐ๋ฅํ ์ธํฐํ์ด์ค๊ฐ ์์ผ๋ ์ผ๋ถ ๊ฐ๋ฐ์๋ค์ ์์ฒญ์ผ๋ก TH1 ์ดํ COM์ ์ฌ์ฉํ์ง ์๊ณ Include๋ง์ผ๋ก ์ฌ์ฉํ ์ ์๋๋ก ๋ณ๊ฒฝ๋ ๊ฒฝ์ฐ๊ฐ ์๋ค.
1.2. C#, Visual Basic[ํธ์ง]
๊ธฐ์กด์ ๋ท๋ท ๊ฐ๋ฐ์๋ค์ ์๋ง ์น์ํดํ ํ
๋ฐ, ์ด๋ WPF ํ๋ก๊ทธ๋จ์ ๋ง๋ค ๋ ์ฐ๋ XAML์ ๊ทธ๋๋ก ์ฐ๊ธฐ ๋๋ฌธ์ด๋ค. ํ์ง๋ง ๋์์ธ ์ธ์ด๊ฐ ๋๊ฒฉ๋ณํ์ฌ ๊ตฌ์กฐ์ ์๋์๋ฆฌ ๋นผ๋ฉด ๊ฑฐ์ ๋๋ถ๋ถ์ด ๋ฐ๋์๋ค. ๋น๋์ IL๋ก ์ปดํ์ผ๋์ด ์ด๋ ์ํคํ
์ฒ๋ ๋๊ฐ์ IL์ CLR๋ก ๋๋ฆฌ๊ธฐ ๋๋ฌธ์ ํ๋ก๊ทธ๋๋จธ๊ฐ ์ํคํ
์ฒ๋ฅผ ์ ๊ฒฝ์ฐ์ง ์์๋ ๋๋ค. Windows 8์์ .NET Framework 4.5๊ฐ ํฌํจ๋์๋๋ฐ, Windows Runtime C#/VB ์ฑ์ .NET 4.5์ ๊ฐ์ํ๋ ๋ฒ์ ์์ ๋์๊ฐ๋ค. C++๋ณด๋ค ์ข ๋๋ฆฌ๊ณ ์ ๋ ฅ์๋ชจ๊ฐ ํฌ๋ค๋ ๋จ์ ์ด ์๋ค.
1.3. JavaScript[ํธ์ง]
์น ๊ฐ๋ฐ์๋ค์ ์ํด ์ง์ํ๋ ์ธ์ด์ด๊ณ , UI๋ HTML/CSS๋ก ์์ฑ๋์ด ์ด๋ก ์ ์ผ๋ก๋ ์นํ์ด์ง ์ฝ๋(๋นํ์ค ์ฝ๋, ํ๋ฌ๊ทธ์ธ ์ฝ๋๊ฐ ์๋ค๋ ๊ฐ์ ํ์)๋ฅผ ๋ณต์ฌ, ๋ถ์ฌ๋ฃ๊ธฐํ๋ฉด ์นํ์ด์ง ๊ทธ๋๋ก ๋ณด์ฌ์ค๋ค. JavaScript ์ฑ์ Internet Explorer 10์ ์ฐจํฌ๋ผ ์์ง ๊ฐ์๋จธ์ ์์์ ๋์๊ฐ๋ฉฐ, ์์
ํ์์ค์ ๋ณด๋ฉด ์ฑ ์ธ๋ค์ผ์ ๋ณด์ฌ์ฃผ๋ WWAHost.exe์ด ๊ทธ ์ฆ๊ฑฐ์ด๋ค. UI๋ ๋ณดํต SDK์ ๊ฐ์ด ์ ๊ณตํ๋ WinJS๋ผ๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ด์ฉํด ์์ฑํ๋ฉฐ, ์ด๋ฅผ ํตํด Windows Store ์ฑ ๋์์ธ์ ๊ตฌํํ ์ ์๋ค.
2. ํฌ๋ก์ค ํ๋ซํผ ์ง์[ํธ์ง]
ํฌ๋ก์ค ํ๋ซํผ ์ฑ์ด๋ ๊ฒ์ ํ๋์ ์ฝ๋๋ก ์ฌ๋ฌ OS์ฉ ์ฑ์ ๋ง๋๋ ๊ฒ์ผ๋ก, ์ต์ ํ์ ๋ฌธ์ ๊ฐ ์์ง๋ง ์ฌ๋ฌ OS์ ๋ฐฐํฌํ๊ณ ์ถ์ ๋ ๋ฒ์ ๊ด๋ฆฌ๊ฐ ์ฝ๊ณ , ๊ฐ OS๋ฅผ ์ํด ๊ฐ๊ฐ ํ์ ๋ง๋ค์ด ๊ฐ๋ฐํ๋ ๊ฒ ๋ณด๋ค ๋น์ฉ๋ ์ ๋ ดํ๊ฒ ๋์ด ๋ง์ด ๋จ๋ ๋ฐฉ์์ด๋ค. ๋ง์ดํฌ๋ก์ํํธ ์คํ ์ด ์ฑ์ ๋ถ์กฑ์ ํด๊ฒฐํ๊ธฐ ์ํด ์ด๋ฐ ํฌ๋ก์ค ํ๋ซํผ ๋ฏธ๋ค์จ์ด๋ฅผ ์ ๊ทน์ ์ผ๋ก ์ง์ํ๊ณ ์๋ค.
2.1. Xamarin[ํธ์ง]
C#์ผ๋ก Android, iOS, Windows, macOS ์ฑ์ ๋ง๋ค ์ ์๋ ํ๋ซํผ์ด๋ค. Windows์๋ .NET Framework์ ์ฐ๊ณ , iOS์ Android๋ .NET์ ์คํ์์ค ๋ฒ์ ์ธ ๋ชจ๋
ธ ์์์ ๋์๊ฐ๋ค. MS๊ฐ .NET Framework๋ฅผ ์คํ์์ค๋ก ํ์ด์ ๋ชจ๋
ธ ์ฝ๋์ ํ๋ฆฌํฐ๊ฐ ๊ธ์์นํ๊ณ ์์ด ์๊ฐ๋ณด๋ค ๊ฝค ๊ด์ฐฎ๋ค. ๋ํ ์ต์ ํ๋ฅผ ์ํด C++ ์ฝ๋๊ฐ ํ์ํ๋ฉด C++ ์ฝ๋๋ฅผ C#์ P/Invoke๋ก ๋ถ๋ฅผ ์ ์๊ณ , ๊ฐ๊ฐ์ OS์ GCC, Clang, Visual C++ ๋ฑ์ ์ปดํ์ผ๋ฌ๋ก ๋ฐ๋ก ์ปดํ์ผ๋๋ ๋ฐฉ์์ผ๋ก ์ธ ์ ์๋ค. Xamarin IDE๋ฅผ ์ค์น ํ, Xamarin for Visual Studio ํ์ฅ ๊ธฐ๋ฅ์ ์ค์นํ๋ฉด Visual Studio์์ Android, iOS ์ฑ์ C#์ผ๋ก ๊ฐ๋ฐํ ์ ์๋ค. ๋จ์ ์ Xamarin์ ๋ฐ๋ก ๋ผ์ด์ผ์ค ๋น์ฉ์ ๋ด์ผํ๊ณ , ์ฝ๋ ์ํ ์ง์์ด ์ ์ ๋ฌธ์ ๊ฐ ์๋ค.
2.2. ๊ฒ์ ์์ง[ํธ์ง]
Unity๋ Cocos2d-x ๊ฐ์ ๊ฒ์ ์์ง๋ค์ด Windows Runtime์ ์ง์ํ๋ค. ์ด๋ฅผ ํตํด ๋ฒํผ ํ๋๋ก iOS, Android ๊ฒ์์ Windows Store ๊ฒ์์ผ๋ก ๋ง๋ค ์ ์๋ค. ๋ฌผ๋ก ์ต์ ํ ๋ฐ ํ
์คํธ๋ ๋ค์ ํด์ผ ํ์ง๋ง ์ด๊ฑฐ ๋๋ถ์ ์๋์ฐ ์คํ ์ด์ ์์ธ์ ๊ฒ์๋ค์ด ์ฌ๋ผ์ ์๋ ๊ฑธ ๊ฐ๋ ๋ณผ ์ ์๋ค. HD ์์ ์ด์ GTA ๊ฒ์๋ค ์ด๋ผ๋ ์ง...
2.3. Apache Cordova[ํธ์ง]
JavaScript๋ก Android, iOS, Windows ์ฑ์ ๋ง๋ค ์ ์๋ ํ๋ ์์ํฌ์ด๋ฉฐ, ํ๋ฌ๊ทธ์ธ์ ํตํด ๋ค์ดํฐ๋ธ API(์๋ฆผ, ์นด๋ฉ๋ผ ๋ฑ ๋ณดํต ์น์์ ์ ๊ทผํ ์ ์๋ ๊ฒ๋ค)์ ์ ๊ทผํ ์ ์๋ค. ์นํ์ด์ง ์ฝ๋๋ฅผ ๋ง์ด ์ฌํ์ฉํ ์ ์๋ค๋ ๊ฒ์ด ๊ฐ์ ์ด๋ค. ๋จ์ ์ ๊ฐ OS์ ์น ๋ ๋๋ง ์์ง์ ๋ชจ๋ ์ ๊ฒฝ์จ์ผ ํ๊ณ , ์๋๊ฐ ๋ค์ดํฐ๋ธ ์ฑ๋ค๋ณด๋ค ๋๋ฆฌ๊ณ , ์ ๋ ฅ ์๋ชจ๊ฐ ํฌ๋ค๋ ์ ์ด๋ค.