[OS] 컨텍스트 스위칭(Context Switching)
[OS] 컨텍스트 스위칭(Context Switching)
2021.12.31컨텍스트 스위칭(Context Switching)이란? 멀티 프로세스 환경에서 CPU가 어떤 하나의 프로세스를 실행하고 있는 상태에서 인터럽트 요청에 의해 다음 우선순위의 프로세스가 실행되어야 할 때 기존의 프로세스의 상태 또는 레지스터 값(Context)을 PCB에 저장하고 CPU가 다음 프로세스를 수행하도록 새로운 프로세스의 상태 또는 레지스터 값(Context)을 PCB에서 가져와 교체하는 작업 그림으로 나타내면 아래와 같다. 그림 1을 통해 컨텍스트 스위칭이 일어나는 과정을 확인해보자. 단계 절차 설명 1 인터럽트/시스템 호출 운영체제에서 프로세스 스케쥴러에 의해 인터럽트 발생 2 커널 모드 전환 프로세스 P0이 사용자 모드(executing)에서 커널 모드(idle)로 전환 (프로세스 P0이 C..
[Mac] XCode에서 dSYM(디버그 심볼) Symbolicate 하는법
[Mac] XCode에서 dSYM(디버그 심볼) Symbolicate 하는법
2020.11.04IOS기기에서 앱 크래쉬 로그를 확인해야 했다. 첫 번째로 찾은 방법으로 Xcode에서 상단 탭 Window > Organizer > Archives의 오른쪽의 Download Debug Symbols을 다운하는 방법이 있다고 했는데, 이건 활성화가 안되어서 해보지 못했다. 결과적으로 문제가 발생한 Xcode > Window > Device and Simulators 내부의 crash 로그 우클릭 > re-symbolicate 해서 해결했다. crash 로그를 re-symbolicate 하기 위해서는 symbolicate전 다운로드한 크래쉬 파일과 라이브러리> Developer> Xcode> DerivedData> app> Build> Products> Release 내부의 dSYM파일과 앱, 그리고 P..
[Mac] 유니티 스크립트로 Xcode 설정하기
[Mac] 유니티 스크립트로 Xcode 설정하기
2020.10.18이용목적 XcodeAPI를 이용하여 빌드 후 Xcode 설정을 자동화하기 위해서 사용한다. 자동화 항목 빌드 설정 편집 프레임 워크의 추가 컴파일 플래그의 설정 info.plist 설정 PostProcessBuild(N) 빌드 후 호출되는 콜백 함수 유니티 내에 있는 특정파일(ex.특정 정보를 외부에서 수정할 수 있도록 빼놓은 데이터 텍스트)을 빌드 후에도 사라지지 않도록 한다. 0이 내부에서 쓰이는 order이므로 1 이상을 지정한다. ※ 이 스크립트 파일은 macOS에 설치된 유니티 에디터를 통해 실행되므로 반드시 Editor 폴더 아래에 두어야 한다. using System.Collections.Generic; using UnityEngine; using UnityEditor; using Unity..
[Mac] SVN 및 SvnX 설치
[Mac] SVN 및 SvnX 설치
2020.08.25SVN(Subversion)이란? 형상관리/소스 관리 툴이다. ※형상관리란 소스코드뿐 아니라 개발환경, 빌드 구조 등 전반적인 환경 전반적인 내역에 대한 관리 체계를 정의하고 있다. 즉, 하나의 서버에서 버전이나 소스를 쉽게 관리할 수 있게 도와주는 툴. 맥에서 설치는 homebrew를 이용하면 쉽다. homebrew를 설치 후, 터미널에서 brew install subversion 입력하면 설치 완료!! 하지만 저건 GUI가 없기 때문에 좀 더 편하고 직관적인 사용을 위해 SvnX도 깔기로 한다. 물론 다른 GUI툴들도 있기때문에 본인에게 맞는 것을 사용하면 된다. 명령어는 brew cask install svnx 이고, 만약 설치 후 안된다면 svnx의 세팅에 들어가서 svn바이너리 경로를 homeb..
[Mac] Homebrew와 Cask 설치 및 사용법
[Mac] Homebrew와 Cask 설치 및 사용법
2020.08.24Homebrew란? Homebrew를 통해 프로그램을 설치&삭제하고 관리할 수 있도록 편하게 만들어 둔 패키지 관리 시스템이다. 즉, Mac OS를 위한 패키지 관리자!! 맥을 처음에는 그냥 쓰다가 저번 OS 업데이트 및 포맷 이후에 homebrew를 사용하기 시작했는데, 사용하는 게 프로그램 관리가 쉽더라. 설치하려면 터미널을 키고 아래의 명령어를 넣어준다. /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)" 이후, Password 입력 창이 나오면 맥북 패스워드 입력 후 확인해주면 된다. ※ Password 입력 시 아무런 표시도 안뜨니 비밀번호 치고 엔터 누르면 된다. 설치가 ..