분류 전체보기

    [OS/OSTEP] 39.interlude-file-directory, 파일과 디렉토리에 필요한 기본적인 시스템콜 API, open(),write() ,read(),mv,rm,mkdir,하드링크,심볼릭링크, mount

    [OS/OSTEP] 39.interlude-file-directory, 파일과 디렉토리에 필요한 기본적인 시스템콜 API, open(),write() ,read(),mv,rm,mkdir,하드링크,심볼릭링크, mount

    [OS/OSTEP] 32.threads-bugs, DeadLock(교착상태), 원자성 위반(atomicity violation), 순서 위반(order violation), [OS/OSTEP] 31.threads-semaphore, 세마포어, 세마포어로 락 구현, 컨디션 변수로서의 세마포어, 생산자/소 [OS/OSTEP] 30.threads-condition variable, 쓰레드 컨디션 변수, 컨디션 변수 두개, 쓰레드 동기화 문.. devforyou.tistory.com [OS/OSTEP] 39.interlude-file-directory # 시작하며 교재의 순서대로라면, 쓰레드가 끝나고 새로운 단원이 시작하고 36챕터부터 새로운 단원이 시작된다. 그러나 현재 수업중인 교수님께서는 39 -> 40 ..

    [OS/OSTEP] 32.threads-bugs, DeadLock(교착상태), 원자성 위반(atomicity violation), 순서 위반(order violation),

    [OS/OSTEP] 32.threads-bugs, DeadLock(교착상태), 원자성 위반(atomicity violation), 순서 위반(order violation),

    [OS/OSTEP] 31.threads-semaphore, 세마포어, 세마포어로 락 구현, 컨디션 변수로서의 세마포어, 생산자/소 [OS/OSTEP] 30.threads-condition variable, 쓰레드 컨디션 변수, 컨디션 변수 두개, 쓰레드 동기화 문제, 생 30.threads-condition variable # 글을 시작하며 저번 포스팅까지는 락이라는 것이 무엇인지 알았고.. devforyou.tistory.com [OS/OSTEP] 32.threads-bugs, # 시작하며 어느덧 쓰레드 단원의 마지막 포스팅이다. 글을 쓰며 정리하기 전까지만 해도 둥둥 떠다니는 개념들이 난잡하게 섞여서 정리되지 않았는데 지금은 어느정도 정리가 된 듯 하다. 시험 범위는 이 다음 챕터인 파일까지이기 때문..

    [에러/안드로이드] 액티비티간 주고받은 uri 권한 연장하기, Permission Denial: opening provider com.android.providers.media.MediaDocumentProvider

    [에러/안드로이드] 액티비티간 주고받은 uri 권한 연장하기, Permission Denial: opening provider com.android.providers.media.MediaDocumentProvider

    # 시작하며 학교에서 진행하는 프로젝트에서 필요한 메인기능에 디자인을 입히기전 간단한 프로토 타입을 만들었다. # 원인 분석 A액티비티 : 리사이클러뷰에서 사진 선택 새로운 액티비티(B)가 열림( 진짜 구현해야할 앱에서는 여기서 추가적인 기능이 수행 됨) B액티비티에서 SAF을 이용해서 갤러리 접근 및 사진 uri를 가져옴 B액티비티에서 이미지 uri가 잘 가져왔는지 이미지 뷰에 set시켜 확인 A액티비티의 각각의 리사이클러뷰까지 이미지가 잘 넘어와짐 A액티비티에서 저장하기를 누르면 파이어베이스 스토리지에 이미지가 저장되고 저장된 이미지 리소스 URL값을 가져와야함 but ERROR # 에러 발생 이미지 저장을 누르는 시점에서 위와 같은 에러가 발생한다. Permission Denial: opening ..

    [OS/OSTEP] 31.threads-semaphore, 세마포어, 세마포어로 락 구현, 컨디션 변수로서의 세마포어, 생산자/소비자 문제, Dining Philosopher, 제마포어

    [OS/OSTEP] 31.threads-semaphore, 세마포어, 세마포어로 락 구현, 컨디션 변수로서의 세마포어, 생산자/소비자 문제, Dining Philosopher, 제마포어

    [OS/OSTEP] 30.threads-condition variable, 쓰레드 컨디션 변수, 컨디션 변수 두개, 쓰레드 동기화 문제, 생 30.threads-condition variable # 글을 시작하며 저번 포스팅까지는 락이라는 것이 무엇인지 알았고, lock() unlock()으로 단지 락을 사용해보기만 했고 그 락은 unlock()이 오면 리턴한다고만 알았던 것을 직 devforyou.tistory.com [OS/OSTEP] 30.threads-semaphore # 시작하며 저번시간에는 컨디션 변수에 대해서 공부했었다. 쓰레드가 동시에 실행됨에 따라서 어떠한 조건을 기다려야 했다. 동기화과정이 필요했는데 이럴때 컨디션 변수를 사용했었다. 컨디션 변수를 사용하여 기다려야하는 상황에서는 wai..

    [OS/OSTEP] 30.threads-condition variable, 쓰레드 컨디션 변수, 컨디션 변수 두개, 쓰레드 동기화 문제, 생산자/ 소비자, covering condition/broadcast,

    [OS/OSTEP] 30.threads-condition variable, 쓰레드 컨디션 변수, 컨디션 변수 두개, 쓰레드 동기화 문제, 생산자/ 소비자, covering condition/broadcast,

    30.threads-condition variable # 글을 시작하며 저번 포스팅까지는 락이라는 것이 무엇인지 알았고, lock() unlock()으로 단지 락을 사용해보기만 했고 그 락은 unlock()이 오면 리턴한다고만 알았던 것을 직접 어떻게 구현되는지를 살펴보았다. 그 과정에서 spin방식을 사용해 while루프를 돌며 계속해서 Test-And-Set과 같은 Atomic한 기법으로 락을 소유할 수 있는지를 검사하는 과정을 거쳐서 구현할 수 있다는 사실을 알았다. 그러나 그 사실에서 CPU낭비가 생기기 때문에 lock이 올때까지 대기할 수 있도록 하는 방법에 대해서 고민해봤고, 첫째로는 yiled()를 사용해서 락을 가질 수 없다는 즉시 CPU를 반환하는 방법을 알 수 있었다. 둘째는 락이 없다..

    [OS/OSTEP] 28.threads-locks , 쓰레드 Spin, Test-And-Set, Comapre-And-Swap, futex, wait, park, unpark,

    [OS/OSTEP] 28.threads-locks , 쓰레드 Spin, Test-And-Set, Comapre-And-Swap, futex, wait, park, unpark,

    [OS/OSTEP] 27.threads-api , 쓰레드 락(lock), 컨디션 변수, 쓰레드 사용시 주의할점 [OS/OSTEP] 26.threads-intro - 쓰레드 개념 정리와 필요성, atomic, 전역변수 지난 게시글. [OS/OSTEP] 22.vm-beyondphys-policy : 메모리 교체 정책 - LRU,FIFO,OPTIMAL,RANDOM,CLOCK #16 22.vm-beyondphys-poli.. devforyou.tistory.com [OS/OSTEP] 28.threads-locks # 시작하며 저번 챕터에서는 락을 일단 사용해봤다. 락을 사용하면서 임계영역에 대해 동시접근을 막는 상호배제가 가능한 것을 알았고, 임계영역에 대한 접근을 할때 락을 가지지 못하면 리턴하지 않는다 했다..