'2011/06/24'에 해당되는 글 5건

  1. 2011.06.24 1장 Introduction
  2. 2011.06.24 3장 Growth of Funtions
  3. 2011.06.24 2장 Boolean Algebra and Logic gate
  4. 2011.06.24 2장 요구사항 수집 (유스케이스)
  5. 2011.06.24 Elimination with Matrices 1
공부/운영체제2011. 6. 24. 22:14


Spooling
 

입력장치가 CPU보다 처리속도가 엄청 느리기 때문에 속도를 보완하기 위해 나온 방식
입출력장치가 보조기억장치에 미리 처리할 내용을 저장해서 프로세스는 입출력장치를 거치지 않고 보조기억장치로부터 읽어서 처리한다.
Spooling은 여러작업을 처리할 수 있다. 예를 들어 한 작업이 출력되는 동안 다른 작업을 불러들일 수 있다.

비교 > Buffering 
Buffering도 CPU와 입출력장치의 속도차이를 보완하기 위한 방법인데 Spooling과 달리 주기억장치에 저장한다.

Multi-programming and Multi-tasking

주기억장치에 여러 프로그램들이 올라가 있고 운영체제가 실행할 프로그램을 선택한다.

von Neumann Architecture

프로그램 메모리와 데이터 메모리가 구분되어 있지 않음 (Harvard Architecture는 메모리가 구분되어 있음)

I/O device controller

I/O device는 컨트롤러를 가지고 있고 CPU는 이 컨트롤러와 정보를 주고 받는다.

운영체제란?

사용자와 하드웨어 중간에서 매개역활을 하는 프로그램

운영체제가 하는 일
 

1) Hardware abstraction
- 프로그래머가 하드웨어의 구체적인 부분을 몰라도 하드웨어에 접근할 수 있도록 한다.
2) Illusion
- time sharing으로 프로세서가 무한한 것처럼
- virtual memory를 이용하여 메모리가 무한한 것처럼
3) Protection
- time-shared scheduling으로 CPU protection
- physical memory와 virtual memory를 분리함으로써 memory protection
- dual mode(User/System)을 사용함으로써 I/O protection

'공부 > 운영체제' 카테고리의 다른 글

6장 Synchronization  (0) 2011.07.04
Process scheduling  (0) 2011.07.03
Multithreaded Programming  (0) 2011.06.30
Process Concept  (0) 2011.06.28
2장 System Structures  (0) 2011.06.25


Posted by skyjumps
공부/알고리즘2011. 6. 24. 21:13


O-notation
Upper bound. 이보다 커질 수 없다.

Ω-notation
lower bound. 이보다 작아질 수 없다.

Θ-notation
tight bound. upper bound도 될 수 있고 lower bound도 될 수 있다.




ο-notation (small O notation)
tight 하지 않은 upper bound

ω-notation (small Ω notation)
tight 하지 않은 lower bound

함수의 비교
 

Θ,Ω,ο,ω 를 관계로 보면
Transitivity
aRb and bRc -> aRc

Reflexivity
aRa

Symmetry
aRb -> bRa

Transpose symmetry 
aRb -> bR'a

'공부 > 알고리즘' 카테고리의 다른 글

8장 Sorting in Linear Time  (0) 2011.07.03
7장 Quicksort  (0) 2011.07.03
Heapsort  (1) 2011.06.30
4 Recursion  (0) 2011.06.28
2장 insertion sort, merge sort, binary search, selection sort, bubble sort  (1) 2011.06.23


Posted by skyjumps
공부/논리설계2011. 6. 24. 19:01


Duality
Boolean Algebra의 중요한 속성.
하나를 보여주면 다른 하나도 보여줄 수 있다.
예를 들면 헌팅턴의 공준, 공리에서  x+y = y+x 임을 보이면 x*y = y*x도 성립한다.
즉 binary operators( +, * )나 identity elements(+일 때는 0, *일 때 1)을 바꿈으로써 하나가 성립하면 다른 하나도 성립한다.

Boolean function
Ex) F1 = x + y'z
Truth tables로 값을 찾을 수 있다.
Logic gate로 구현할 수 있다.

Complement of Function.
F'은 F의 값이 0인 경우가 1이다.
드모르간 (DeMorgan) 법칙을 이용해 구할 수 있다.
또는 dual을 구하고 각 문자에 complement를 하면 된다.

Minterms and Maxterms

그림에서 보면 minterms 와 maxterms는 complement 관계에 있다.

Truth table로 부터 함수의 min terms를 구할 수 있다.
그리고 함수 F의 함수값이 0이 되는 부분을 이용하여 F'의 min terms도 구할 수 있고
이 함수를 다시 complement하면 본래의 F로 돌아가지만 max terms으로 표현된다.
따라서 min term을 알면 max terms도 안다. (complement 관계!)

Boolean expressions
52쪽 참고

Digital logic gate
54쪽 참고
 

'공부 > 논리설계' 카테고리의 다른 글

4장 Combinational Logic  (0) 2011.06.28
3장 Gate-Level Minimization  (0) 2011.06.26
1장 Binary Systems  (0) 2011.06.22


Posted by skyjumps
공부/객체지향2011. 6. 24. 18:30


소프트웨어는 고객이 원하는 기능을 하도록 해야 한다.
 

그러기 위해서 요구사항을 수집한다.
요구사항 : 시스템이 올바르게 동작하기 위해 수행하는 특정한 하나의 일.
요구사항을 잘 얻기 위해서는 시스템이 무엇을 해야 하는지 이해해야 한다.
예상밖의 상황도 생각해서 이를 어떻게 처리할지 생각해야 한다.
 
유스케이스
 

고객의 특정한 목표를 달성하기 위해 시스템이 무엇을 하는지 기술한다.
하나의 유스케이스에는 하나의 목표에만 집중한다.
따라서 목표 하나에 유스케이스 하나씩 있다.
유스케이스는 시스템이 '무엇'인지에 대한 것이다. 따라서 '어떻게' 구현할지는 생각하지 않음.
시스템의 외부에 고객이나 외부의 어떤 것이 존재한다.

유스케이스는 3가지가 필요하다.
1. 이 유스케이스가 고객의 목표달성에 도움이 되어야 한다.
2. 시작과 종료 지점이 있다. 
3. Actor가 있다. 주로 사람이나 시스템 외부의 어떤 것. 주로 시작 지점을 담당한다.

유스케이스는 프로그램의 주경로 이외에도 대체 경로에 대해서도 잘 동작하도록 해야 한다.

'공부 > 객체지향' 카테고리의 다른 글

5장 좋은디자인 = 유연한 소프트웨어  (0) 2011.06.28
4장 분석  (0) 2011.06.26
3 요구사항 변경  (0) 2011.06.25
1장  (0) 2011.06.23
UML, 상속, 다형성, 캡슐화  (0) 2011.06.22


Posted by skyjumps
공부/선형대수2011. 6. 24. 11:05


Elimination이 성공할 경우
pivot이 0이 아니다.
pivot : (i,i) 위치의 값

Elimination이 실패할 경우
pivot 위치에 0이 나올 경우

Back-substitution
Elimination이 끝난 후, 끝부분 부터 답을 찾아나가는 것.
예) 1w = 2 부터 위로 올라가면서 w, v, u를 구한다.
2u + v + w = 5
    -8v - 2w = -12
            1w = 2

Elimination Matrix
Eij (i 번째 row, j번째 column)의 값(- l)은 i번째 row * l  에서 j번째 row를 빼라는 의미

Matrix multiplication 

Ax = b에서 x는 column이 하나임을 의미
AB에서 B는 column이 여러개 가지고 있음을 의미
Multiplication by columns
AB = A[b1 b2 b3] = [Ab1 Ab2 Ab3]. b1,b2,b3는 B의 columns.

A의 열의 갯수와 B의 행의 갯수가 같아야 곱하기가 가능

matrix multiplication을 보는 세가지 방법

1) AB의 i,j번째 값은 A의 i번째 row와 B의 j번째 column의 inner product.

2) 모든 AB의 column은 A의 columns의 combination.

3) AB의 각 row는 B의 rows의 combination.

Bonus
4) AB = Sum of (cols of A) x (rows of B)
B의 row을 A의 col의 각 요소로 곱한 값이 결과다.
 
associative: (AB)C = A(BC)
distributive : A(B + C) = AB + AC and (B+C)D = BD + CD
not commutative : usually FE ≠ EF
 

'공부 > 선형대수' 카테고리의 다른 글

Inverse Matrices  (0) 2011.06.26
1장 Matrices and Gaussian Elimination (1)  (0) 2011.06.22


Posted by skyjumps