일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 터치디자이너 Instancing
- ableton live 10
- 파이썬 if
- 터치디자이너 인터페이스
- 터치디자이너 python
- TDableton
- 터치디자이너
- particleGPU
- 터치디자이너 if
- touchdesinger
- 파이썬
- 터치디자이너 함수
- 터치디자이너 reference
- 터치디자이너 list
- 터치디자이너 에이블톤
- 터치디자이너 interface
- TouchDesigner
- touchdesigner GPU
- 터치디자이너 참조
- 터치디자이너 튜토리얼
- 터치디자이너 강의
- 터치디자이너 timeline
- 터치디자이너 파이썬
- 터치디자이너 오퍼레이터
- 파이썬reference
- touchdesigner displace
- 터치디자이너 replicator
- touchdesigner particle
- displace
- 터치디자이너 클론
- Today
- Total
목록개발 공부/컴퓨터 과학 (29)
caLAB
프로세스 동기화 프로세스 동기화는 공통적인 부분을 업데이트할 때 결과값이 일정하지 않은 문제가 생기는 것을 해결하기 위해서 필요하다. 프로세스 동기화를 하지 않았을 때의 문제를 은행 계좌를 예시로 설명해보도록 하자. 위 이미지를 보면 부모는 은행 계좌에 돈을 입금하고 자식은 돈을 출금한다. 만약, 부모와 자식이 동시에 계좌에 접근해서 돈을 입금하고 출금하려고 할 때 어떻게 될까? 이럴 때는 오류가 생기면서 결과값이 일정하지 않게 된다. 이러한 문제를 임계구역(critical section) 문제라고 한다. 임계구역은 공통적으로 접근하고 있는 부분을 말한다. 코드에서 표현하자면 account 변수가 될 것이다. 그렇다면, 이러한 문제를 어떻게 해결할 수 있을까? 해결 방법은 총 3가지 방법이 있다. 1. ..
스케쥴링 척도, FCFS, 쓰레드 CPU 스케쥴링이란 메인 메모리에 여러개의 프로세스가 있을 때 현재 프로세스가 끝난 후 어던 프로세스를 돌릴지 정하는 것을 말한다. 여기에는 두 가지 방식이 있다. 하나는 Preemptive(선점) 다른 하나는 Non-Preemptive(비선점) 방식이다. 이 둘의 차이는 현재 프로세스가 돌아가고 있을 때 이 프로세스가 끝나기 전에 개입할 수 있는지 없는지 여부이다. Preemptive의 경우에는 이름과 마찬가지로 끝나기 전에 개입이 가능한 방식이고, Non-Preemptive의 경우에는 현재 프로세스가 끝나기 전에 개입할 수 없다. 스케쥴링의 척도 스케쥴링의 척도 즉, 스케쥴링의 성능에 대해서 평가하는 항목들이 여러개 있는데 몇 가지를 보겠다. - CPU Utiliza..
이중모드 / 하드웨어 보호 아래는 cpu의 구성에 대한 그림이다. cpu는 cpu내부에 기억장치인 레지스터와 계산을 하는 alu 제어를 하는 control unit으로 구성되어 있다. 역기서 레지스터는 비트들의 모음으로 cpu의 상태를 나타낸다. 이를 상태 플래그라고 한다. 상태 플래그에는 캐리, 네거티브, 오버플로우 등이 있다. 이런 cpu를 직접적으로 제어하는 명령어들을 특권 명령(privileged instructions)이라고 한다. 이름에서 표현하듯이 이러한 명령은 특별한 경우에만 사용되어야 된다. 컴퓨터를 사용하다보면, 한 컴퓨터를 여러 사람이 동시에 사용하거나 한 사람이 여러 개의 프로그램을 동시에 사용할 수 있다. 이 때 사용자가 쉽게 cpu를 제어할 수 있게 되면 프로그램 전체에 영향을 ..
운영 체제의 정의와 역할 운영체제란? 컴퓨터 하드웨어를 관리하는 프로그램. 컴퓨터 하드웨어를 잘 관리하여 성능을 높이고 사용자에게 편의성을 제공. *컴퓨터 하드웨어 : 프로세서, 메모리, 디스크, 키보드, 마우스, 모니터, 네트워크... 컴퓨터의 구조는 크게 processor, memory, disk로 구성되어 있다. processor는 우리가 잘 알고 있는 cpu이다. memory는 rom, ram으로 구성되어 있다. rom은 비휘발성 메모리로 전원을 꺼도 데이터가 지워지지 않는다. ram은 휘발성 메모리로 전원을 끄게 되면 지워진다. 따라서, rom에서 하드디스크를 뒤져서 os를 ram으로 가져온다. 이를 '부팅'이라고 한다. disk는 프로그램을 저장하고 있는 공간이다. 운영체제는 관리 프로그램이다..
비전공자로써 개발을 하는데 간혹 이론 지식에 대한 부족을 느껴서 이를 보완하고 좀 더 성장 및 발전하기 위해서 공부를 하고 정리해서 공유해보고자 한다. 아래는 앞으로 공부하는 것들에 대해서 정리할 계획이다. 차후 추가 예정. 기록을 통해서 스스로 동기부여를 할 수 있고 혹여나 내 게시글을 보는 누군가에게 도움이 되었으면 한다. 개발자들의 4대 STEP cs 전공 지식 - 자료구조, 알고리즘, 운영체제, 데이터베이스, 네트워크(tcp/ip) 코딩 테스트 - 어떤 자료 구조 써서 어떤 알고리즘 써서 문제 해결하는지(리트 코드, 백준) 객체 지향 - 추상화를 어떻게 시키는지 의존성 설계를 어떻게 할 것인지(객체지향의 사실과 오해, 오브젝트, 클린코드, 리팩토링, 디자인 패턴, 클린 아키텍처) Assume un..
CLR(common language Runtime)이란? - 33p C# 컴파일러가 만들어낸 실행 파일은 하드웨어가 이해할 수 없는 코드로 구성되어 있어 실행할 수 없습니다. C# 컴파일러는 C#소스 코드를 IL(intermediate language)라는 중간 언어로 작성된 실행 파일을 만들어 냅니다. 사용자가 이 파일을 실행시키면 CLR이 중간 코드를 읽어 하드웨어가 이해할 수 있는 네이티브 코드로 컴파일한 후 실행합니다. 이것을 JIT(just in time) 컴파일이라고 부릅니다. JIT컴파일 과정 C#컴파일러 → 실행파일(IL로 작성 됨) → CLR(IL 읽음) → 하드웨어 읽음 메모리 공간(스택 / 힙) - 43p 스택 값 형식 관련. 코드 블록 안에서 생성된 모든 값 형식의 변수들은 프로그램..
팩토리 패턴이란? Factory method는 부모(상위) 클래스에 알려지지 않은 구체 클래스를 생성하는 패턴이며. 자식(하위) 클래스가 어떤 객체를 생성할지를 결정하도록 하는 패턴이다. 코드 1. 상속 사용 / 공장 1개 제품 다수 using System; using System.Collections.Generic; namespace factoryPattern_simple { class Program { static public List pList = new List(); static public List cList = new List(); static void Main(string[] args) { //생성자 생성 Creator c = new Creator(); //주문 생성 productCreate..
큐 (Queue) 큐 (Queue)는 먼저 추가된 데이타가 먼저 출력 처리되는(FIFO, First In First Out) 자료 구조로서 입력된 순서대로 처리해야 하는 상황에 이용된다. Queue는 맨 뒤(tail)에 데이타를 계속 추가하고, 맨 앞(head)에서만 데이타를 읽기 때문에 순차적으로 데이타를 처리하게 된다. using System; using System.Collections.Generic; using System.Text; namespace dataStructure_Test.MyListClass { class MyQue { public string[] array; public int arrayNum; public int top; public void arrayInst(int n) { a..