2017년 2월 12일 일요일

service primitives

Primitive: 가장 작은 수행 단위
Service Primitive: OSI 참조 모델에서 수행해야 하는 가장 작은 수행단위로, request, indication, response, confirmation 네 가지가 있다.

보통
T_Data.ind, T_Data.con, T_Data.req 혹은
S_Data.ind, S_Data.con, S_Data.req 등으로 사용 되는데
여기서 T 는 Transport Layer에서 붙인 Header, S 는 Session Layer 에서 붙인 Header를 의미한다.

req 는 request 를 의미하여 보내는 것을 시작했다?
con 는 confirm 으로 다 보냈다.
ind 는 indication 보낸 것을 받았다?
의미가 모호하지만 어느 지점인 것 까지는 이해했다.
When receiving a request from an upper layer, the function in the Network Layer is performed by a Request primitive.
When the Request is received, a Confirm primitive returns confirmation of that receipt to the upper requesting layer.
In some cases, when the requested event has been completed, there is an Indication primitive sent to the upper layer to inform it of the event.
참조: http://www.cel.com/pdf/misc/zic08_nwk_api.pdf



https://en.m.wikipedia.org/wiki/Language_primitive
https://www.rivier.edu/faculty/vriabov/CS553_ST7_Ch02-ProtocolArchitecture.ppt
https://en.m.wikipedia.org/wiki/Service_primitives

2017년 2월 11일 토요일

휴대폰 구매 시 고려해야 할 사항(선택약정, 공시지원금)

휴대폰 구매 시 확인해야 하는 것 정리해 보았습니다.

---

전제 조건
1. 통신사: U+
2. 대상모델: V20, 출고가 899,800원
3. 요금제: 데이터스페셜A, 65,890원

공시지원금
공시지원금: 휴대폰에 붙는 지원금을 공시한 것, V20 149,500만원 (Link)
공시: 알리는 것
지원금: 휴대폰 구입 시 지원된 만큼 기기 값을 깎아주는 제도, 요금제마다 지원되는 공시 지원금이 다르다.

선택약정
선택약정: 매달 특정% 로 기본요금에서 할인해 주는 것, 현재 최대 20%, V20 24개월 316,272원
약정: 어떤 일을 약속하여 정함
선택약정 가입 조건: 보조금을 받지 않았거나, 보조금을 받은 지 24개월이 지난 단말기 등(Link)

공시지원금과 선택약정 중 선택
V20
    공시지원금: 149,500만원
    선택약정 24개월: 316,272원
    선택약정 선택!

    선택약정 중 12개월, 24개월 중 선택

선택약정 개월수 선택
가능 선택지 12개월, 24개월
재약정 가능?(Link)
    24개월+24개월+24개월...
    12개월+12개월+12개월...
할인반환금(해지를 하면 내야하는 돈)




결론
1년 단위로 재 약정되는지 확인한 다음
1년 단위로 선택약정 진행한다.

2017년 1월 26일 목요일

마우스 두개를 한번에 사용하기(Using Multi Mice, mouses)

하나의 컴퓨터에서 두 개의 마우스를 사용하고 싶었습니다.

듀얼 모니터를 사용할 때 한 화면을 공유하면서(Ex>프레젠테이션) 두 화면에서 각각 다른 작업을 하고싶을 때가 있거든요.

여러 프로그램들이 있었지만 저는 

PluralInput 이라는 프로그램이 가장 좋았습니다.

간단히 링크(https://pluralinput.com/) 들어가서 Download 받고 설치한 후 두 개의 Mouse를 연결하면 각 각 따로 사용할 수 있습니다.

현재 Beta 버전이라서 무료 이며 Commercial 버전을 따로 구매할 수 있습니다.

Mice on Windows 그림

Mice on  Windows 동영상






2017년 1월 22일 일요일

정규식(regular expression) 사용 예시들 - 실무에 사용 후 기억하기 위해

1. 역참조(backreference)
Notepad++ 에서는 문자열 검색 시 정규식을 지원해 줍니다.



다양한 사용법 중 강력한 기능은 "역참조" (backreference) 입니다.

특정 문자열을 찾은 다음 그 문자열을 재 참조하여 사용할 수 있다는 의미 입니다.

예를 들어

92983/예시1 ;;Example200001
65453//예시2 ;Example400002

라는 문자가 있을 경우 여러가지 방법으로 정보를 추출하고 싶어 집니다.

숫자들(92983, 65453) 만 뽑거나
예시의 번호(1, 2)만 뽑는 것
혹은 Example 의 번호(200001, 400002) 를 뽑을 수도 있고
그 외에도 다른 여러가지 방법으로 뽑고 싶은 상황이 생깁니다.

치환은 이 때 사용할 수 있는데

아래 형태로 검색하면 위 내용이 한줄 씩 검색이 됩니다.

([0-9]+)[\/]*(예시[0-9 ]+)[\;]*(Example[0-9]+)


만약 마지막의 내용(Example 관련)만 뽑고 싶다면
바꾸기 에서 \3 을 입력하면 됩니다.

\3은 ( 과 ) 으로 감싸져 있는 3번째 항목 나타내는 말 입니다.

matching 시 개수를 지정하려면
[정규식]{번호}

2. 함수들 만을 남기기 위한
^((?!\([ a-zA-Z0-9\,\_]*\)).)*$
설명: 함수 선언의 필수인 ( 와 ) 를 가지고 있지 않은 줄을 찾기 위한 정규식

3. 특정 캐릭터가 없는 것
(?!\()
\( 가 없는 조건을 만들기 위하여 이 것을 "(?!" 과 ")" 를 감싼다.
?! 의 의미 ? 의 의미 ! 의 의미를 따로 알아야 한다.

4. 특정 캐릭터로 끝나는 것 (Link)
^.*(?<!to)$

5. 최소 몇개의 캐릭터가 있어야 하는 것
([0-9\:]{1,9})( )([0-9\:]{1,9}) ([A-Za-z\_0-9\,\?]*)
보통 * 만 쓰면 없을때도 있기 때문에{1, 9} 처럼 최소 1개 에서 9개 까지 를 명시해 주면 직관적으로 이해할 수 있다.

6. Visual Studio 에서 특정 함수를 print 하려고 할때

찾을 문자열: ([0-9a-zA-Z \=\_\-\*\,\(\)\;\:\" ]*cv[a-zA-Z0-9]*\([0-9a-zA-Z \=\_\-\*\,\(\)\;\:\" ]*;)
변경할 문자열: \1\n\#ifdef _DEBUG\n_cprintf\(\"\1\"\);\n\#endif
추가: \" 에 대한 고려

2017년 1월 15일 일요일

Datasheet 읽는 법

datasheet는 왜 중요할까요?

전자분야를 시작하는 사람에게 경험자들이 "Datasheet 먼저 읽어봐" 라고 하는 것을 듣게 됩니다.

왜 그렇게 datasheet가 중요한 것이며 그 datasheet에서 어떤 정보를 얻을 수 있는 것일까요?

하지만 결국 많은 경험이 있어야지만 Datasheet에서 많은 내용을 얻을 수 있는것 같습니다. Datasheet를 처음부터 끝까지 읽는 것은 정말 도움이 되는 것일까요?

---

간단히 얘기하자면 Datasheet는 그 부품에 대한 완벽한 백과사전 입니다.

좋은 Datasheet는 당신이 알아야 할 모든 것을 이야기 해 줄 것입니다. 그 정보를 이용 하세요.

많은 Design Error는(그 부품을 사용한 시스텡의) 그 부품의 Datasheet에 적혀있는 Spec을 대충(고의이건 아니건 간에)보았기 때문 입니다.

가장 분명한 사실은 datasheet는 Pin 들을 보여준다는 것입니다, 그래서 당신은 어떻게 Pin 을 연결해야 할 지 알 수 있습니다.

144개 Pin이 있는 Controller 라면 datasheet 없이는 어떻게 연결해야 할 지 알 수 없는것은 당연 합니다.

그리고 Datasheet가 있어도 간단한 diode 회로도 정도가 있어야 합니다.

Pin Configuration
Absolute Maximum Rating
Voltage and Current rating: power supply range,

추가 정리 필요.

Link

2017년 1월 4일 수요일

CSS Tutorial Code Automation

제작 순서
1. CSS 를 공부하고 싶다고 생각
2. http://www.w3schools.com/css/ 의 example 이 유용하다는 것을 발견
3. 하나의 페이지 내용 확인
4. python 으로 automation 해서 한눈에 보고싶다고 생각
5. page source 에서 필요한 link 들을 추출(notepad++ 에서 regular expression 사용)
6. 화면상의 button 을 누를 수 있도록 id 확인
7. python code 작성
8. 동영상 프로그램 실행
9. 7번 code 실행하며 동영상 녹화

제작 순서 with 자료
1. CSS 를 공부하고 싶다고 생각
2. http://www.w3schools.com/css/ 의 example 이 유용하다는 것을 발견
3. 하나의 페이지 내용 확인(HTML 에 CSS를 추가할 때의 차이점을 보여준다)


4. python 으로 automation 해서 한눈에 보고싶다고 생각
5. page source 에서 필요한 link 들을 추출(notepad++ 에서 regular expression 사용)


6. 화면상의 button 을 누를 수 있도록 id 확인

7. python code 작성


 
8. 동영상 녹화 프로그램 실행
9. 7번 code 실행하며 동영상 녹화(전체화면)
  -> 직접 클릭하면서 보고, 직접 작성하는 것이 좋지만. 동영상을 돌려가면서 짧은시간에 전체를 보는 것도 좋겠다고 생각 했습니다.