IT관련 지식들 2016. 6. 20. 10:47


개인적으로 이해한 UML에 대해 정리를 해 본다.


1. UML이란

  - Unified Modeling Language. 통합 모델링 언어.

  - 프로그램을 만들기 전에 그리는 프로그램에 대한 청사진, 설계도 

  - 개인 혹은 집단의 공통된 생각을 정리한다.


2. UML을 꼭 사용해야 하는지 물어본다면 다음의 사항을 고려해보자.

  - 그림으로 그려서 표현하는 것보다 코드를 보는 것이 간단할 경우 UML을 사용할 필요가 없다.


3. 어떤 UML을 저장해야 하는가?

  - 대부분의 UML은 수명이 길지 않다. 칠판, 노트 등 수명이 짧은 저장매체에 그리고 지우기를 반복한다.

  - 작은 동작(행위)들에서 시작해서 그림을 그리고 필요한 동작을 하나씩 추가한다.

많은 토론 끝에 저장할 만한 가치가 있는 UML이 남으면 팀원 모두가 공유할 수 있는 공간에 자료를 저장한다.

  - UML의 목적은 팀원들 간에 같은 설계를 이해하게 하는데 있다. UML이 목적이 되어서 그림을 잘 그리게 하는 것 보다, 같은 내용을 이해하고 빠르게 코딩에 들어가게 하는 것이 중요하다.


4. UML의 다이아그램 종류와 각 특징

use case diagram 

class diagram

behavior diagrams:

statechart diagram

activity diagram

interaction diagrams:

sequence diagram

collaboration diagram

implementation diagrams:

component diagram

deployment diagram


'IT관련 지식들' 카테고리의 다른 글

소켓 통신  (0) 2016.06.30
싸이로드 세미나(카메라)  (0) 2016.06.30
가변인자를 사용한 매크로 (개인용 printf)  (0) 2016.06.16
usleep함수 사용.  (0) 2016.06.15
pthread_create 함수 사용.  (0) 2016.06.15
posted by 동글동글82
:
IT관련 지식들 2016. 6. 16. 15:03

디버깅을 위해서 printf를 사용하고 나면 추후 소프트웨어 출하에서도 디버그 메세지가 나오는 경우가 생긴다.

매크로를 사용하면 문제를 없앨 수 있다.

추가로 가변인자를 잘 활용하여 원하는 출력을 가지는 디버그 로그를 확인할 수 있다.


#if defined(DEBUG)

#define TePrint(fmt,args...) printf( "[%s %d]" fmt, __FILE__,__LINE__, ## args )

#else

#define TePrint

#endif

'IT관련 지식들' 카테고리의 다른 글

싸이로드 세미나(카메라)  (0) 2016.06.30
UML(Unified Modeling Language).  (0) 2016.06.20
usleep함수 사용.  (0) 2016.06.15
pthread_create 함수 사용.  (0) 2016.06.15
VIM 설정 저장  (0) 2016.06.14
posted by 동글동글82
:
IT관련 지식들 2016. 6. 15. 17:36


1. 헤더 추가

#include <unistd.h>


2. 함수 사용

      - 마이크로 sec이기 때문에 1초를 하려면 다음과 같이 한다.

#define ONESEC (1000*1000)


usleep(ONESEC);

'IT관련 지식들' 카테고리의 다른 글

UML(Unified Modeling Language).  (0) 2016.06.20
가변인자를 사용한 매크로 (개인용 printf)  (0) 2016.06.16
pthread_create 함수 사용.  (0) 2016.06.15
VIM 설정 저장  (0) 2016.06.14
버추얼박스 해상도 문제  (0) 2016.06.10
posted by 동글동글82
:
IT관련 지식들 2016. 6. 15. 17:34

*pthread_create 함수 사용

- 목적 : 쓰레드를 추가로 생성해서 각 쓰레드에 업무를 분산하여 동작.


- 방법 

1. 헤더파일 추가

#include <pthread.h>


2. 파일에 함수 추가.


int pthread_create( pthread_t *th_id, const pthread_attr_t *attr, void* 함수명, void *arg );

ex) 

pthread_t thread;

void *thread_Picture(void *arg);


pthread_create(&thread, NULL, &thread_Picture, NULL)


함수 인자값의 의미는 다음과 같다.

pthread_t thread; <- thread 번호를 저장할 변수공간이라고 하는데, 출력하기가 어렵다.

NULL : attributes. 정확히 몰라서 NULL을 입력했다.

void *thread_Picture(void *arg); <- 스레드가 생성되면서 동작할 함수.

NULL : argument. 정확히 몰라서 NULL을 입력했다.


성공적으로 스레드를 생성하면 0을 return한다.


3. 컴파일


이후 빌드를 할 때 -D_REENTRANT -lpthread 옵션을 추가로 써서 컴파일을 진행한다.

ex)

${CC} ${OBJ} -o ${NAME} ${LIBS}

==> ${CC} ${OBJ} -o ${NAME} ${LIBS} -D_REENTRANT -lpthread



참고사항

- ps -ax 명령어를 사용해도 PID는 같은 값이 나온다. 그렇다 하더라도 서로 다른 상황에서 돌아가고 있으므로 헷갈리지 말자.

- pthread 함수를 정리한 사이트 방문하여 좀 더 살펴볼 필요가 있음



posted by 동글동글82
:
IT관련 지식들 2016. 6. 14. 10:23

VIM을 실행할 때 마다 사용할 설정을 위해서는 아래 파일에명령어를 써 놓는다.


home/"user"/.vimrc


설정할 만한 명령어


set nu

posted by 동글동글82
:
IT관련 지식들 2016. 6. 10. 14:38

버추얼 박스의 해상도가 이상하게 나오는 경우에는 버추얼박스 게스트확장 CD를 삽입해서 문제를 해결한다.


버추얼박스 

장치 메뉴 -> 게스트 이미지 CD 삽입


리눅스

cd /media/XXX/VBOXADDITIONS_X.X.XX_XXXXX

sudo ./VBoxLinuxAdditions.run

sudo reboot.

'IT관련 지식들' 카테고리의 다른 글

pthread_create 함수 사용.  (0) 2016.06.15
VIM 설정 저장  (0) 2016.06.14
우분투 64bit에서 32bit 패킷이 동작하지 않을 때.  (0) 2016.06.10
Samba 설치 및 설정 (우분투)  (0) 2016.06.07
리눅스 명령어 모음.  (0) 2016.06.07
posted by 동글동글82
:
IT관련 지식들 2016. 6. 10. 14:17


13.xx 버전 이후부터 32bit 라이브러리를 제거했다는 이야이가 있다.


따라서 패킷을 풀기 위해서 다음과 같은 작업이 필요하다.


@kangmin/:sudo dpkg --add-architecture i386 && sudo apt-get update

@kangmin/:sudo apt-get install libc6:i386 libncurses5:i386 libstdc++6:i386 zlib1g:i386


'IT관련 지식들' 카테고리의 다른 글

VIM 설정 저장  (0) 2016.06.14
버추얼박스 해상도 문제  (0) 2016.06.10
Samba 설치 및 설정 (우분투)  (0) 2016.06.07
리눅스 명령어 모음.  (0) 2016.06.07
xming 사용방법  (0) 2016.06.07
posted by 동글동글82
:
IT관련 지식들 2016. 6. 7. 16:20

작업 내용

- 삼바 설치

- ID를 등록해서 로그인 후 폴더 생성

- 윈도우에서 접속


1. 삼바 설치

>sudo apt-get install samba


>sudo service smbd start


2 ID 등록

> sudo service smbd stop


> sudo vim /etc/samba/smb.conf


[kangmin]이란 아이디를 만들어서 path에 접속할 수 있도록 설정 수정


> sudo smbpasswd -a kangmin

패스워드를 등록


> sudo service smbd start


3. 윈도우에서 접속

- 네트워크 드라이브 추가

- 이때 윈도우 탐색기에서 IP(\\192.168.128.6)를 먼저 입력하여 정상적으로 접속 가능한지 확인 후 네트워트 드라이브를 연결한다.


'IT관련 지식들' 카테고리의 다른 글

버추얼박스 해상도 문제  (0) 2016.06.10
우분투 64bit에서 32bit 패킷이 동작하지 않을 때.  (0) 2016.06.10
리눅스 명령어 모음.  (0) 2016.06.07
xming 사용방법  (0) 2016.06.07
스마트 톨링(smart tolling)  (0) 2016.06.01
posted by 동글동글82
:
IT관련 지식들 2016. 6. 7. 11:09


* 심볼릭 링크

kangmin@Megatong:~$ ln -s /usr/src/linux-headers-3.19.0-58-generic/ ./kbuild00/

kangmin@Megatong:~/kbuild00$ ls

linux-headers-3.13.0-85-generic  linux-headers-3.19.0-58-generic


* 커널 및 리눅스 버전 확인

kangmin@Megatong:~/kbuild00$ uname -a

Linux Megatong 3.19.0-58-generic #64~14.04.1-Ubuntu SMP Fri Mar 18 19:05:43 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux


*하드 용량 확인

lvlin@Kangmin-desktop:/$ df -h -T

Filesystem                  Type      Size  Used Avail Use% Mounted on

udev                        devtmpfs  1.8G  4.0K  1.8G   1% /dev

tmpfs                       tmpfs     366M  1.3M  365M   1% /run

/dev/sda1                   ext4       55G   17G   36G  33% /

none                        tmpfs     4.0K     0  4.0K   0% /sys/fs/cgroup

none                        tmpfs     5.0M     0  5.0M   0% /run/lock

none                        tmpfs     1.8G   76K  1.8G   1% /run/shm

none                        tmpfs     100M   36K  100M   1% /run/user

/dev/mapper/ubuntu--vg-root ext4      913G  3.8G  863G   1% /media/data1



'IT관련 지식들' 카테고리의 다른 글

우분투 64bit에서 32bit 패킷이 동작하지 않을 때.  (0) 2016.06.10
Samba 설치 및 설정 (우분투)  (0) 2016.06.07
xming 사용방법  (0) 2016.06.07
스마트 톨링(smart tolling)  (0) 2016.06.01
새로운 기술 동향  (0) 2016.03.18
posted by 동글동글82
:
IT관련 지식들 2016. 6. 7. 10:58

1. Xming설치

xming 프로그램을 다운받아서 윈도우에 설치한다.


Xming-6-9-0-31-setup.zip


2. Xming 실행


3. Putty에서 X11 설정

- connection -> ssh -> x11

- x11 forwarding, enable x11 forwarding 체크박스 체크


4. putty 실행 후 "firefox &" 명령어 실행



4.1. 실행되지 않을 경우

- firefox가 실행되고 있는경우 창이 뜨지 않을 수 있음.

- 기존 firefox를 kill 하고 4.을 다시 수행 

'IT관련 지식들' 카테고리의 다른 글

Samba 설치 및 설정 (우분투)  (0) 2016.06.07
리눅스 명령어 모음.  (0) 2016.06.07
스마트 톨링(smart tolling)  (0) 2016.06.01
새로운 기술 동향  (0) 2016.03.18
Deluge web ui 설치 및 사용  (0) 2016.01.05
posted by 동글동글82
: