일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- Nebula
- c++ heap
- vim-go
- JUCE
- JUCE 튜토리얼
- C언어
- 운영체제
- 프로그래밍
- LOB
- 코딩
- Docker
- OS
- go channel
- JUCE library
- C++ library
- C++ gui
- a tour of go
- gui
- JUCE라이브러리
- 백준
- 공룡책
- 알고리즘
- BOJ
- 연결리스트
- 리듬게임
- C++ gui 라이브러리
- C++
- tour of go
- go
- 자료구조
- Today
- Total
목록OS (20)
CafeM0ca
서론 쓰레드의 코드로 표현하는 방법은 구글링을 통해 많은 예제들을 볼 수 있다. 여기서는 좀 더 구체적인 이론들과 사용하는 방법에 대해 학습해보자. 이론 햄버거 가게에서 카운터 한명이 주문을 받고 있다. 주문을 기다리는 손님의 줄이 끝없이 보인다. 아뿔싸, 조리대에는 1명의 직원밖에 없어 손님들의 주문이 하나 둘씩 밀리기 시작한다.. - 살..려..줘 위 예시에서 햄버거 가게가 갖고 있는 문제는 2가지다. 카운터 한명으로는 너무 많은 손님을 커버할 수 없다. 조리대 직원은 밀려오는 주문에 고통받고 있다. 이를 해결할 방법은 매니저가 취할 수단은 직원을 더 고용하는 것이다. 2명의 카운터가 주문을 받는다면 주문 처리 속도는 2배가 된다. 2명의 조리대 직원이 햄버거를 제조하면 같은 시간 동안 생산량이 2배..
http://studyfoss.egloos.com/category/System 각종 시스템,커널 등 많은 자료가 정리되어 있음
우분투에서 터미네이터를 사용하고 있다. ctrl+shift+octrl+shift+e위의 두개로 화면분할해서 쓰고 있으나 화면이 작아진다는 단점이 있다.ctrl+shift+t 단축키는 화면이 작아지지 않고 새 창을 띄우게 된다. 새로 만들어진 창을 옮겨다닐려면 마우스를 써야하는데 다행이 단축키가 있다.next_tap 단축키다. 초기설정은 ctrl+pagedown인데 불편해서 ctrl+`로 바꿔놓고 쓰고 있다.
플러그인 관리자는 vim-plugin이고(꼭 설치되어있어야함 https://github.com/junegunn/vim-plug) nvim이면 ~/.config/nvim/init.vim에 vim이면 .vimrc에 덮어써주면 된다. https://github.com/jiny0x01/vimcheatset 위 레포지토리에서 .vimrc 파일을 사용하면 된다. 각 플러그인 공부하면서 입맛에 맞게 단축기 설정하자. "은 주석이다. nerdtree 플러그인으로 인해 F3누르면 왼쪽에 소스파일들이 보인다. colourcheme 스킨을 다운받고 /usr/share/nvim/runtime/colors에 넣으면 잘 작동한다 25번째줄을 확인해보면 파일 이름만 바꿔서 써주면 된다. 사용짤 +2018/04/15 플러그인을 추가..
임계 구역(critical section) == 공유변수 영역 둘 이상의 쓰레드가 동시에 접근해서는 안되는 공유 자원(ex: 자료 구도 또는 장치)에 접근하는 코드의 일부. 임계구역은 지정도니 시간 이후에 종료됨. 임계 구역에 들어가고자 한다면 그 시간만큼 대기해야함. 임계구역에 들어가거나 나올때에는 세마포어 같은 동기화 메커니즘이 사용된다. 세마포어세마포 혹은 세마포어는 동기화 도구로서 wait()와 signal()로만 접근 A와 B가 방에 들어가려한다.방에는 카드 52장이 있다. A와 B는 정해진 시간동안 번갈아가면서 카드를 뒤집을 수 있다.A는 앞면으로 B는 뒷면으로 뒤집는다.먼저, A가 방으로 들어갔다. B는 대기하고 있다.A가 카드를 뒤집고 방에서 나왔다.방은 비어있으므로 B가 방에 들어간다.방..
1.nvim설치 http://mjae.kr/2016/10/01/vimlinux-2-neovim-%EC%84%A4%EC%B9%98%ED%95%98%EA%B3%A0-24bit-%EC%BB%AC%EB%9F%AC-%EC%A0%81%EC%9A%A9%ED%95%98%EA%B8%B0/ 2.한글설정 http://progtrend.blogspot.com/2018/06/ubuntu-1804-uim.html 4.터미네이터,구글,vmware5.테마 http://blog.naver.com/PostView.nhn?blogId=peacehd2014&logNo=220967408194&redirect=Dlog&widgetTypeCall=true6.카톡 https://imitator.kr/Linux/1221
컴퓨터 프로그래밍에서 파일 디스크립터는 종류에 상관없이 파일에 접근하기 위한 추상적인 지시자이다. - wikipedia파일 디스크립터는 3개의 표준 스트림이 있다.정수 값이름에 정의된 상수 파일 스트림0표준 입력STDIN_FILENOstdin1표준 출력STDOUT_FILENOstdout2표준 에러STDERR_FILENOstderr 표 출처: wikipedia 표준 입력은 키보드로부터 이루어 지고 출력과 에러는 모니터를 통해 이루어진다.프로세스들의 파일 디스크립터 테이블의 0,1,2번은 이미 위의 표준으로 예약되있어서 3번부터 쓸 수 있다. -1은 오류쉘에서 실행한 프로세스가 0~2번만 사용된다는 것은 프로세스마다 개별적인 파일 디스크립터 테이블을 가지고 있다는 것. init프로세스로부터 fork()를 통..
Operating System Concepts 8판 -한국어 답은 모카의 주관적인 생각이다. 참고만 하고 오타, 문제가 있으면 댓글로 남겨주시길 1.1 네트워크 컴퓨터와 전형적인 개인용 컴퓨터의 차이는 무엇인가? 네트워크 컴퓨터를 사용하는 것이 유리한 사용 시나리오를 설명하시오. - 결정적인 차이는 '효율'이다. 네트워크 컴퓨터는(Network Computer 이하 NC) 작은 메모리와 최소한의 연산이 가능한 CPU(성능이 떨어지는)를 가지고 있다. NC의 핵심은 모든 처리를 서버에 넘기는 점이다. 이 때, 서버 컴퓨터는 '어마어마한 성능을 가지고 있다'고 가정한다. 때문에 개인용 컴퓨터(Personal Computer 이하 PC)의 고성능 CPU를 사용하지 않아도 서버 컴퓨터를 통해 작업할 수 있어서 ..
프로세서: 하드웨어적으로 프로그램을 수행함 (네트워크 장비,디지털 미디어 장비 등)프로세스: 프로세서에 의해 실행 중인 프로그램인터럽트: 하드웨어&소프트웨어의 이벤트가 발생할 때 CPU가 처리할 수 있게 하는 것.인터럽트 핸들러: 인터럽트에 대응하여 특정 기능을 처리하는 기계어 코드 루틴인터럽트 벡터: 인터럽트 핸들러의 메모리 위치인데 인터럽트 우선순위를 지정하고 만약 둘 이상의 인터럽트가 처리 대기중이면 대기열에 저장함. 트랩(trap): 프로세서가 특정 시스템 기능을 사용하려 할 때 운영체제한테 요청하는 방법
모카는 우분투를 사용한다. 방금 뇌리를 스친 생각이 '응용프로그램을 GUI로 실행시키고 끄는데 터미널로 컨트롤 할 수는 없을까?'라는 생각이다.그래서 일단 home 디렉토리에서 리눅스 음악플레이어인 'qmmp'를 실행시켜봤다.결과는 '찾을 수 없다'였다. (atom은 잘만 켜지던데 ㅎ... 환경변수랑 연관있는건가?) 모카는 find 명령으로 찾기로 했다.find [경로] [옵션] 경로는 /(루트)로 지정해주고 옵션은 name과 perm을 사용하기로 했다.(모카가 'qmmp'로 부터 알 수 있는 사실은 2가지다. 첫째로 실행파일 두째로 이름) find / -name qmmp -perm -300 | grep qmmp 루트부터 qmmp라는 이름을 최소한(-) 실행권한이 있는 프로그램을 찾아라 -name 인자로..