일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 리눅스
- 백준
- C++
- 텐서플로우
- TensorFlow
- 프로세스
- 턱걸이
- 프로그래밍
- 회귀
- 공부
- CV
- OpenCV
- c
- 알고리즘
- 딥러닝
- python
- Windows10
- 백준알고리즘
- 운영체제
- C언어
- 코딩
- Windows 10
- error
- 영상처리
- shell
- 학습
- Computer Vision
- 시스템프로그래밍
- 쉘
- linux
- Today
- Total
목록공부 (28)
줘이리의 인생적기

안녕하세요 안드로이드 어플을 개발하기 위해선 안드로이드 스튜디오가 필수겠죠 안드로이드 스튜디오(Android Studio) 설치하기 https://developer.android.com/studio Download Android Studio & App Tools - Android Developers Android Studio provides app builders with an integrated development environment (IDE) optimized for Android apps. Download Android Studio today. developer.android.com 위 홈페이지에서 안드로이드 스튜디오를 다운로드합니다 다운로드가 완료되면 다운로드 파일인 setup wizard를 ..
큐에 대해서 ! 큐의 구조에 대해서 먼저 알아보고 관련된 용어, 라이브러리를 불러와서 구현까지 해보겠다 큐는 가장 먼저 넣은 데이터를 가장 먼저 꺼낼 수 있는 구조이다. 예를 들자면, 줄을 서는 행위와 매우 유사하다. 줄을 먼저 선 사람이 제일 먼저 입장하는 것처럼. 이러한 정책을 FIFO(First-in, First-Out) 정책이라고 한다 관련된 용어로는 Enqueue, Dequeue가 있고, Enqueue는 큐에 데이터를 넣는다는 뜻, Dequeue는 큐에서 데이터를 꺼낸다는 뜻이다. 데이터를 넣으면 제일 뒷부분에 데이터가 들어가고 데이터를 꺼내면 제일 앞에 있는 데이터가 출력된다. 이제 라이브러리를 사용해보자 import queue queue_example = queue.Queue() # data..
가장 기본적인 자료구조인 배열에 대해서 알아보겠다 배열은 데이터를 나열하고, 각각의 데이터를 인덱스에 대응하도록 구성한 자료구조이다. 파이썬에서는 리스트 타입이 배열기능을 담당하고 있다. 배열은 왜 필요할까? 같은 타입의 데이터를 효율적으로 관리하고, 순차적으로 저장하기 위해 필요하다! 배열은 빠른 접근이 가능하나, 추가 삭제가 쉽지 않다는 단점이 있다..! 배열에 대해서 좀 알아보았으니 본격적으로 파이썬을 통해서 배열을 알아보자 위에서 언급했다시피 배열을 담당하는 리스트이며, 리스트를 가지고 배열을 구현해보자 # 1차원 배열 data1 = [1, 2, 3] # 2차원 배열 data2 = [[1, 2], [3, 4], [5, 6]] 매우 쉽다. 1차원 배열과 2차원 배열을 구현했다. 잠깐, 각 차원 리스..

wait()시스템콜이 있는 이유는 fork()함수 호출 시 자식 프로세스가 종료할 때까지 부모 프로세스가 기다린다. 기다리지 않으면 부모 프로세스가 먼저 끝나서 자식 프로세스는 고아프로세스가 되어버린다. 리턴값은 자식프로세스의 pid이다. copy-on-write copy-on-write는 fork() 시스템콜이 4GB를 복사하는데 시간이 너무 오래걸린다는 문제점에서 출발했다. 자식프로세스 생성 시에 복사를 하지 않고 우선 부모 프로세스 페이지를 우선 사용한다. 읽기가 아니라 쓰기를 할 때 해당 페이지를 물리메모리에서 복사하고 분리한다. 분리한 후에는 업데이트된 물리 메모리의 page pointer를 자식 프로세스의 페이지테이블에서 업데이트한다. 장점은 프로세스 생성 시간을 줄일 수 있으며, 새롭게 할당..
foreground process : 쉘(shell)에서 해당 프로세스 실행을 명령한 후, 해당 프로세스 수행 종료까지 사용 자가 다른 입력을 하지 못하는 프로세스 background process : 사용자 입력과 상관없이 실행되는 프로세스 이 두개의 차이가 어떤 것인지 알기 위해서는 터미널창에 일반적인 실행방법을 생각해보면 된다. 터미널 창을 하나 켜고 실행파일을 하나 실행 했을 때, 우리는 다른 명령어를 입력하지 못한다. 그것이 foreground process이다. background process를 실행하고 싶을 때는 마지막에 &를 붙이면 된다. 그러면 process는 실행하고 터미널창에 또 다른 명령어가 입력가능한 상태가 된다. 이때 등장하는 [숫자] 숫자 의 의미는 [job number] P..
리눅스는 윈도우와 다르게 전역 네임스페이스를 사용한다. - 윈도우 : C:/windows/... - 리눅스 : /home/사용자이름/... 파일 리눅스의 파일은 inode 고유값과 자료구조에 의해 주요 정보를 관리한다. 프로세스 리눅스의 실행파일 포멧은 ELF(Executable and Liable Format)이다. 시스템콜 호출을 통해 다양한 시스템 리소스 처리를 가능토록 구성되어 있다. 가상 메모리를 지원한다. 각 프로세스는 pid 고유값으로 구분한다. init 프로세스를 기반으로 fork() 시스템콜을 사용해서 신규 프로세스가 생성된다. 권한 운영체제는 사용자와 리소스 권한을 관리하며, 리눅스는 사용자와 그룹으로 권한을 관리한다. root는 슈퍼관리자 파일마다 소유자, 그룹, 소유자와 그룹이 아닌..

페이징 기법과 다른 세그멘테이션 기법에 대해서 알아보겠다. 세그멘테이션 기법은 가상 메모리를 같은 크기의 블록으로 분할하는 페이징 기법과는 다르게 가상 메모리를 서로 크기가 다른 논리적 단위인 세그먼트로 분할하는 기법이다. code segment, data segment, stack segment, extra segment로 나누어 메모리에 접근한다. 세그먼트 가상주소도 페이징 가상 주소와 비슷하다. v = (s, d)로 나타내며, s는 세그먼트 번호, d는 블록 내 세그먼트의 변위를 나타낸다. 세그먼트 페이지를 찾아가서 물리주소를 알아내고 물리 메모리에 있는 해당 세그먼트를 가서 변위만큼 떨어진 데이터에 접근한다. 사진으로 보면 명확한데, segmentation 기법은 외부 단편화 문제가 일어날 수 있..

PC(Program Counter), SP(Stack Pointer)에 주목해야 한다. Process Control Block(PCB)에 PC, SP정보를 포함하여 여러가지 정보를 저장한다. -Process ID -Process state -Register info(PC, SP 등) -Scheduling info -Memory info 등등 PCB가 중요한 이유는 CPU에서 실행할 프로세스를 교체하는 기술인 Context Switching에서 필수요소이기 때문이다. Context Switching이 일어났을 때 일어나는 일들을 알아보자 1. 실행 중지되는 프로세스 정보를 해당 프로세스의 PCB에 업데이트 후 메인메모리에 저장한다. 2. 실행 될 프로세스 정보를 메인 메모리에 있는 해당 프로세스의 PCB정..