프로세스는 실행중인 프로그램이라고 할 수 있다. 하나의 프로세스의 메모리는 heap, stack, data, code 영역을 갖는다.프로세스는 스레드를 포함한다. 스레드는 프로세스 안에서 실행되는 흐름의 단위 이다.스레드는 stack만 따로 갖고 heap, data, code 영역은 공유하여 사용한다. 각각의 프로세스끼리는 독립적이지만 스레드끼리는 자원을 공유하여 사용하기 때문에 독립적이지 않다.병렬 처리 기법인 멀티 프로세스, 멀티 스레드를 보며 차이를 알아보자. 프로세스나 스레드는 한 번에 한개씩 동작한다고 생각하면 좋다. 한 번에 한개씩 동작하는 프로세스를 동시에 사용하기 위해서는 여러개의 프로세스를 빠른 속도로 번갈아가며 실행하는 것이다. 빠른 속도로 번갈아가며 실행하기 때문에 동시에 사용하는 것..
다른 사람의 컴퓨터에서 git으로 작업을 마친 뒤, 컴퓨터 주인의 설정으로 바꿔놓았는데 Permission to "repository" denied to "name(내 계정)" 과 같은 에러가 발생하였다. 분명 git config global 설정을 바꿔주었는데도 불구하고 왜 내 계정으로 접근을 시도할까? 문제는 Credential(인증정보) 였다. Git은 인증정보(Credential)를 입력하는 경우 인증정보를 저장해두고 자동으로 입력해주는 시스템을 제공한다.Git으로 push 등의 작업을 할 때 계정 정보를 묻는 창이 이러한 작업을 해주는 것이었다. 따라서 해당 인증정보가 남아서 그랬던 것이므로 인증정보를 삭제해주면 된다. 해결 방법은 아래와 같다. (windows 10 기준) 제어판 -> 자격 증..
네이버 아이디로 로그인 하기 위해서는 우선 developers.naver.com 에 가서 오픈 API를 신청해야 한다. 오픈 API를 신청하고 나면 아래와 같은 화면이 나타난다. 이후 현재 버전(작성 당시 4.2.0)에 맞는 sdk 파일을 https://developers.naver.com/docs/login/sdks/ 에서 다운 받는다. 이후 .aar 파일을 libs/에 넣고 gradle에 추가해준다. implementation 'com.naver.nid:naveridlogin-android-sdk:4.2.0' implementation files('libs/naveridlogin_android_sdk_4.2.0.aar') implementation 'com.android.support:appcompa..