호반반 개발 블로그

호반반 개발 블로그

  • 분류 전체보기 (288)
    • Topcit 정리 (70)
      • 기술영역 - 소프트웨어 개발 (21)
      • 기술 영역 - 데이터베이스 구축과 운영 (17)
      • 기술 영역 - 네트워크 이해와 활용 (13)
      • 기술 영역 - 보안 이해와 활용 (12)
      • 비즈니스영역 - IT 비즈니스 이해 (7)
      • 비즈니스영역 - 테크니컬 커뮤니케이션 (0)
      • 비즈니스영역 - 프로젝트 관리 (0)
    • 수학 필기노트 (45)
      • 수학Ⅱ (9)
      • 미적분 (6)
      • 기하 (16)
      • 선형대수 (4)
      • 이산수학 (10)
    • 개발 관련 학습정리 (62)
      • Computer Vision (0)
      • AVR(atmega128) Register 분석 (11)
      • ARM(cortex-m3) Register 분석 (7)
      • Open CV (1)
      • C# (10)
      • Web Front-end (9)
      • 컴파일러 만들기 (이론) (23)
      • 컴파일러 만들기 (개발) (1)
    • Diary (43)
    • 학교 수업 정리 (8)
      • Micom (2)
      • 프로그래밍 실무 (C++,C#) (3)
      • Linux (3)
    • 프로젝트 요약 (1)
    • CS 필기 노트 (45)
      • OS (9)
      • 자료구조 (6)
      • 네트워크 (7)
      • DB (4)
      • 소프트웨어 공학 (6)
      • 컴퓨터 구조 (13)
    • 신기술 기록 보관소 (4)
    • 정보처리기사 (9)
      • 필기 (9)
      • 실기 (0)
  • 홈
  • 태그
  • 방명록
  • 민트스트로베리
  • 인성 나쁜 인성이
RSS 피드
로그인
로그아웃 글쓰기 관리

호반반 개발 블로그

컨텐츠 검색

태그

arduino Atmega128 이차곡선 벡터 AVR 컴파일러 개발 OS c# 탑시트 소프트웨어 공학 기하 아두이노 기하와 벡터 미분 데이터베이스 diary TOPCIT 컴파일러 객체지향 적분

최근글

댓글

공지사항

아카이브

병행 프로세스의 동기화 유형 [임계 영역, 상호 배제, 세마포어, 모니터]

한 프로세스가 공유 메모리를 사용하고 있을 때, 다른 프로세스들이 사용하지 못하도록 배제시키는 기법이다. 교착 상태가 발생하지 않음을 보장하는 데커 알고리즘, 피터슨 알고리즘을 통해 상호 배제 기법을 구현한다. 교착 상태 : 둘이상의 프로세스들이 서로 다른 프로세스가 차지하고 있는 자원을 무한정 기다리고 있는 상태. 교착상태가 발생할 때 : 1. 상호 배제 - 중복이 안되도록 막기 때문에 계속 기다려질 수 있다. 2. 점유와 대기 - 자원을 점유하고 있는 프로세스가 다른 자원을 기다릴때 나타남 3. 비선점 - 사용이 종료될 때까지 강제로 해제할 수 없을때 나타남 4. 순환 대기 - 각 프로세스는 순환적으로 다음 프로세스가 요구하는 자원을 가지고 있을때 나타남 임계 구역 상호 배제의 문제로 자원이 프로세스..

자세히보기
하버드 구조와 폰 노이만 구조

폰 노이만 구조 프로그램과 데이터의 메모리를 공유하며, CPU와 메모리 사이에 하나의 버스만 존재한다. 이와 같은 구조로 인하여 명령어를 실행시킬때 두번의 인출 사이클이 필요하다는 단점이 있다. 하지만 다른 작업을 해야할 때 소프트웨어적으로만 변경해도 되기 때문에 범용성이 좋다. 하버드 구조 명령어를 처리하는 프로그램 메모리와 데이터 메모리가 따로 구분되어 있다. 두개의 버스로 이루어져 있어 동시에 처리할 수 있고, 속도가 빠르다는게 장점이다 하지만 그만큼 회로가 복잡하고 비용이 많이 든다는 단점이 있다.

자세히보기
[기하] 1-11. 이차곡선의 접선 - 3

수악중독님의 교재를 참고하여 작성하였습니다. 학생이다 보니 틀린점이 있으면 마음껏 지적해주세요 수식은 mathjax api를 사용하였습니다. 쌍곡선의 접선 타원 ${x^2 \over a^2}-{y^2 \over b^2} = 1$ 와 직선 $y=mx+n$를 연립하여서 저번에 포물선의 접선을 구한 방식 그대로 중근이 나오도록 하면 이 나온다. 이제 여기서, 쌍곡선 위의 특정한 점 $(x_1, y_1)$위에서의 접선의 방정식을 알아보자 먼저 $(x_1, y_1)$의 접선의 방정식은 $y-y_1 = m(x-x_1)$이다. 이제 위의 식과 판별식으로 구한식을 연립하면 $y_1-mx = \pm \sqrt{a^2m^2 - b^2}$ 가 되고 이를 양변을 제곱하여 정리하면 $(x_1^2-a^2)m^2 - 2x_1y_1..

자세히보기
[Atmega128] 6. 아날로그 변환기 ADC (Analog to Digital Converter)

atmega128의 ADC에 대하여 알아보도록 하자. atmega128 ADC의 특징으로는, 10비트 8채널의 변환기가 있고 7채널의 차동입력 변환기로 사용가능하다. 그리고 변환완료 인터럽트를 사용할 수 있다. 먼저 adc가 아날로그신호를 디지털신호로 바꾸는 과정에 대해 알아보자. 1. 전처리 : 아날로그 신호에 포함된 잡음을 제거하고 신호의 대역폭을 제한하여 엘리어싱 을 줄인다. 2. 표본화 : 신호 대역폭 두배이상의 일정한 샘플링 주파수에 따라 신호값을 취하여 즉 신호에 포함된 최고 주파수 성분 주기의 보다 작은 주기로 신호값을 취하여 저장한다. 3. 양자화 : 표본화된 아날로그 신호는 연속적인 양으로 이를 진화하면 무한한 자리수를 요구할 수도 있다. 그러므로 표본화된 값을 소구간으로 분할하여 유한한..

자세히보기
[Atmega128] 4. 타이머 인터럽트 (clk/Timer mode/OC 단자 출력)

이번에 알아볼 것은, 분주 설정하기 , 타이머 모드, OC 단자 출력을 하는 방법이다. 분주 설정하기 CS00.. 02는 TCCR0 레지스터 안에 포함되어있는 비트들로, 이를 통하여 분주를 설정할 수 있다. 분주로 주기를 만들려면 몇 개의 과정이 필요하다. ※ 8 분주로 가정하고 과정을 설명하겠습니다. 1. 기본 16 Mhz이므로 8 분주로 쪼개면 2 Mhz가 된다. 2. 2 Mhz는 0.5us마다 진동하는 것을 표현하는 단위이다. 이렇게 되면, 0.5us마다 TCNT의 값이 증가하게 되는 것이다. 3. TCNT는 255가 넘으면 인터럽트를 발생시키기 때문에 0.5*256 = 128 -> 128us마다 인터럽트 발생 이런 식으로, 8... 1024분 주의 주기를 알 수 있다. Timer Mode WGMn..

자세히보기
티스토리
© 2018 TISTORY. All rights reserved.

티스토리툴바