본문 바로가기
[Java Concurrency] 단일 연산 변수와 넌블로킹 동기화 [Java Concurrency] 단일 연산 변수와 넌블로킹 동기화 - 병렬 알고리즘과 관련한 최근의 연구 결과를 보면 대부분이 넌블로킹 알고리즘, 즉 여러 스레드가 동작하는 환경에서 데이터의 안정성을 보장하는 방법으로 락을 사용하는 대신 저수준의 하드웨어에서 제공하는 비교 후 교환(compare-and-swap) 등의 명령을 사용하는 알고리즘을 다루고 있다. - 넌블로킹 알고리즘은 운영체제나 JVM 에서 프로세스나 스레드를 스케줄링 하거나 가비지 컬렉션 작업, 그리고 락이나 기타 병렬 자료 구조를 구현하는 부분에서 굉장히 많이 사용하고 있다. - 넌블로킹 알고리즘은 락을 기반으로 하는 방법보다 설계와 구현 모두 훨씬 복잡하며, 대신 확장성과 활동성을 엄청나게 높여준다. - 넌블로킹 알고리즘은 훨씬 세밀.. 2017. 5. 9.
[샌프란시스코] 첫 식사는 역시 스테이크! 테드 스테이크 ( Ted's Steak House ) [샌프란시스코] 첫 식사는 역시 스테이크! 테드 스테이크 ( Ted's Steak House ) 시작 : 16:13 끝 : 16:46 유니언 스퀘어에서 살짝 멍 떄리다가 첫 식사를 하러 간다.역시 미국에 왔으니 스테이크를 맛 봐야 겠지? 가성비도 좋고, 셀프 서비스 느낌으로 이용하기도 편리하다는Ted's Steak House ( 테즈 스테이크 하우스 ) 를 이용하기로 한다. 위치는 글 가장 마지막에~ 입구에 전기구이( 혹은 오븐구이 ) 치킨들이 보이고, 메뉴도 보인다. 테드의 유명한 특수부위 스테이크는 $17.49.신선한 구운 연어는 $ 17.49.오븐에 구운 ( broil ) 치킨 반마리는 $ 12.49. 우리는 위에서부터 2개.특수부위 스테이크와 구운 연어를 먹기로 한다. 안쪽으로 들어서자, 그릴에서.. 2017. 5. 8.
[Java Concurrency] 동기화 클래스 구현 14.1. 상태 종속성 관리 - 병렬 객체의 상태 종속적인 메소드는 선행 조건이 만족하지 않았을 때 오류가 발생하는 문제에서 비켜날 수도 있겠지만, 비켜나는 일보다는 선행 조건을 만족할 때까지 대기하는 경우가 많아진다. - 자바에 내장된 조컨 큐 메커니즘(condition queue mechanism)은 실행 중인 스레드가 특정 객체가 원하는 상태에 진입할 때까지 대기할 수 있도록 도와주며, 원하는 상태에 도달해서 스레드가 계속해서 실행할 수 있게 되면 대기 상태에 들어가 있던 스레드를 깨워주는 역할도 담당한다. - 일단 선행 조건을 만족하지 않았다면 락을 다시 풀어줘야 다른 스레드에서 상태 변수를 변경할 수 있다. 만약 락을 풀어주지 않고 계속 잡고 있다면 다른 스레드에서 상태 변수의 값을 변경할 수 .. 2017. 5. 8.
[Server구축/Tutorial] 리눅스에서 디바이스 이름과 파티션 [Server구축/Tutorial] 리눅스에서 디바이스 이름과 파티션 -/dev/fd0 -> 첫번째 플로피 디스크/dev/fd1 -> 두번째 플로피 디스크 -/dev/sda -> SCSI ID 주소에서 가장 먼저 오는 SCSI 디스크/dev/sdb -> SCSI ID 주소에서 두번째로 오는 디스크 /dev/sda1 -> sda 의 첫번째 파티션/dev/sda2 -> sda 의 두번째 파티션 cf) SCSI 는 Small Computer System Interface 의 약자로, 주변기기 연결할 떄 직렬 방식으로 연결하기 위한 표준을 이야기한다.고성능을 위한 시스템 버스로 주로 서버와 같은 컴퓨터에서 하드디스크와 같은 주변 장치를 연결하는 데 사용된다.스커지라고 읽는다.SCSI 는 SAS 로 진화했다. H.. 2017. 5. 7.
[취미] 스크래치 그림 [취미] 스크래치 그림 시작 : 16:02끝 : 16:10 너무 단편적인 삶을 사는 것 같아 취미생활을 조금씩 늘려가려 하고 있다.그래서 사실 보문에 살 때 갱또님으로부터 선물 받았던 "스크래치 그림" 을 이제야 개봉해서 했다. 스크래치 그림은 초등학교 때 하는 크레파스로 종이를 가득 채우고,그 위에 검은색 크레파스로 덧칠 한 다름 긁어내는 그 형태의 그림이다. 검은 바탕 밑에는 반짝이는 느낌의 노란색 배경이 있다.검은색 그림 위에 연하게 회색으로 긁어내야 할 부분이 표시되어 있는데,그 부분을 벗겨내면 위와 같은 그림이 완성된다. 아주 쉬워보이지만 고도의 집중력이 필요하고, 손도 많이 아프다.키트에 동봉된 긁어내는 나무 펜(?) 이 뭉툭해지기 때문에 뾰족하게 깍으면서 작업했다. 위의 피라미드와 스핑크스는.. 2017. 5. 7.
Harddisk Interface 정리 ( IDE, SATA, SCSI, SAS ) Harddisk Interface 정리 ( IDE, SATA, SCSI, SAS ) http://skymeet.tistory.com/43 -IDE ( Integrated Drive Electronics ) 가장 오래된 규격 데이터를 병렬로 전송한다는 뜻에서 PATA ( Parallel Advanced Technology Attachment ) 라고도 부른다. 최신 규격 UDMA6 모드에서는 초당 133.3MB 전송속도를 낸다. 현재는 초기 IDE 보다 성능 향상된 E-IDE ( Enhanced IDE ) 규격을 사용하는데, 일반적으로 현재 IDE 라고 부르는 녀석이 E-IDE 이다. -SATA ( Serial Advanced Technology Attachment ) SATA1 에서는 초당 150MB S.. 2017. 5. 6.
[성신여대 카페] 까페개네 - 강아지 카페 [성신여대 카페] 까페개네 - 강아지 카페 가끔 강아지들과 놀고 싶을 때가 있다.강아지들이 조건 없이 나를 맞아 줄 때, 나와 함께 있어줄 때 마음의 위안을 느낀달까? 그래서 성신여대에 있는 "카페개네" 로 갔다.다른 애완견 카페를 가보지는 않았지만 이 곳은 강아지들의 분비물들을 빨리 치워주어 깔끔한 이미지라 좋다. 가격은 음료 및 사료 한주먹이 포함된 가격으로 1인당 8000원. 시간제한이 없이 있을 수 있어 괜찮은 가격이라 생각된다. 강아지 종류는 방문할 때마다 조금씩 바뀌곤 했다.깜찍한 목도리를 한 시바견. 용맹하기보다는 사람손을 너무 많이 타서인지 약간 멍청해 보인다. ㅋㅋ 물론 이 애완견 카페에 가서 이 동물들을 "소유" 할 수는 없다.이 녀석들은 약아서 먹이를 주는 사람에게만 간다.그래서 새로.. 2017. 5. 6.
[샌프란시스코] 첫인상! 공기는 좋은가? [샌프란시스코] 첫인상! 공기는 좋은가? 시작 : 14:40끝 : 15:30 자 이제 샌프란시스코가 어떻게 생겼는지 첫인상을 함깨 느껴보자. Powell (파웰, 파월) 역 바깥으로 나왔다. 햇살이 우리를 맞아준다. Powell 역은 Cable Car 의 종착역으로 이곳에서 줄을 서서 케이블카를 타고 Pier 지역으로 넘어가곤 한다.Cable Car 에 대한 내용은 나중에 다룬다. 샌프란 시스코의 건물들은 생각보다 중후함이 있었다.약간 오래된 느낌도 있었지만, 유럽느낌의 아름다움 혹은 고상함이 있달까? 그리고 가로수들이 많이 있었다. 샌프란에서 가장 인상깊었던, 좋았던 것은 바로 청명한 하늘.우리나라는 미세먼지로 엄청 고생하는데... 저기는 정말 얼마나 공기가 좋고 하늘이 파랗던지..그래서 가시거리도 얼.. 2017. 5. 5.
[Java Concurrency] 명시적인 락 13.1. Lock 과 ReentrantLock - Lock 인터페이스는 암묵적인 락과 달리 조건 없는(unconditional)락, 폴링 락, 타임아웃이 있는 락, 락 확보 대기 상태에 인터럽트를 걸 수 있는 방법 등이 포함돼 있으며, 락을 확보하고 해제하는 모든 작업이 명시적이다. - public interface Lock{ void lock(); void lockInterruptibly() throws InterruptedException; boolean tryLock(); boolean tryLock(long timeout, TimeUnit unit) throws InterruptedException; void unlock(); Condition newCondition(); } - Reentran.. 2017. 5. 5.
반응형