전체 글 29

[Pro] 유스 케이스 시나리오

유즈케이스 다이어그램에서 그린 유즈케이스 들을 상세히 설명 하는 것을 의미한다. 기본 구조는 관리자 관점 1. 영상에 대한 openpose tracking 개요 : 사용자가 운동영상을 업로드 하면 운동 영상에 대하여 openpose tracking 기술을 사용하여 신체 부위 + 운동 기구 (덤벨 및 바벨)에 점이 찍힌다. 해당 점이 움직이는 범위를 직선으로 표기하여 운동을 수행하면서 변화하는 직선의 모습을 보고 동작이 올바르게 수행 되고 있는지 사용자가 체크 할 수 있게 도움을 준다. 기본 흐름 : 영상 데이터들을 openpose tracking 기술을 사용하여 점이 잘찍히는지 확인하고 움직이는 점의 범위를 직선으로 표기한다. 사용자가 운동에 대한 정보를 입력하는 창 (EX) 스쿼트 80KG 10REPS..

SQL 첫걸음

오래간만에 블로그에 글을 쓴다. 학기 이다 보니 학과 공부하니라 바쁘기도 하고, 방학 때 개인적으로 하려는 프로그램 교육이 있어서 지원하고 면접보고 하니라 굉장히 바빳다... 변명이긴 하지만..! 방학이 되어서, 데이터 분석에 관심이 있던 나는 SQL 의 중요성을 잘 알고 있어서 SQL 공부를 시작하려 한다. 인강없이 책으로 독학 이기에 SQL 첫걸음 책을 참고 했다! SQL 정리 1. cmd창 을 킨다. 2. mysql -u root -p 를 하면 password 창이 나온다. password 를 입력하면, mysql 서버로 접속이 된다. mysql 서버로 접속하였으므로, SQL 명령을 사용하여 데이터들을 활용 할 수 있다. ○ mysql 서버에서 데이터 베이스들 조회하기 show database; -..

SQL 2022.06.28

프로그램/프로세스/스레드 기본지식

프로그램 프로세스 스레드 란 무엇인가? 프로그램 : 파일이 저장장치에 저장되어는 있지만 아직 메모리에 할당되지 못하여 정적인 상태 프로세스 : 실행되고 있는 프로그램 우리가 카카오톡을 실행하기 전에는 카카오톡 어플이 C 드라이브 어느곳에 저장되어 있을 것이다. 이 상태는 정적인 상태기 때문에 아직 프로그램인 것이고, 우리가 만약, 카카오톡을 실행한다면 운영체제는 메모리에 카카오톡을 할당 시키고 우리가 카카오톡을 쓰면서 입출력 장치도 사용할 것이며 프로그램을 실행하는 것이기 때문에 실행 후의 카카오톡은 프로세스가 되기도 한다. 그렇다면 스레드는 무엇일까? 간단히 말하자면, 스레드는 CPU의 기본 실행 단위이다. 프로세스가 실행되는 경로라고 생각하면 될 것같다. 스레드는 프로세스와 다르게 스레드 간 메모리를..

[OS] 컴퓨터 시스템 구조

컴퓨터 시스템 구조 해당 내용을 공부하기 이전에 CPU, 프로세서, Core 세가지에 대해서 헷갈렸었는데 잘 정리 돼 있는 글이 있다. 출처: https://donghoson.tistory.com/14 CPU, 프로세서, 코어... 같은 용어인가? 학부 때 항상 느꼈던 궁금점인데, 왜 이제서야 정리를 하게 되었을까... CPU, 프로세서, 코어 ... 같은 용어인거 같기도 하고, 아닌거 같기도 하고... 일단 3가지 용어의 기본 정의부터 살펴보자. - C donghoson.tistory.com 참고하면 좋을 듯 하다! Single-Processor 시스템 - 한개의 프로세서를 사용하는 시스템 Multiprocessor 시스템 - 두개 이상의 프로세서를 사용하는 시스템 -> 프로세서들은 bus, memor..

[OS] I/O 구조 , 레지스터의 이해

운영체제 코드의 많은 부분이 입출력을 관리하는데 할애된다. 입출력에 대한 개관을 공부하겠다. 그림을 보면 알 수 있듯이, cpu는 입출력 장치와 직접 접근을 하지 못한다. Device Controller 를 통하여 cpu 와 입출력 장치간의 데이터 전송이 가능하다. Device Controller Device Controller 는 local buffer 와 특수용도의 레지스터들을 갖고 있다. 주변장치(I/O device)와 local buffer 간의 데이터 전송을 담당한다. local buffer 는 일시적으로 주고받는 정보를 제공해준다. 휘발성으로 영구 저장은 되지 않는다. 장치 드라이버 이해하기 드라이버란 컴퓨터와 연결된 특정장치와 통신하여 이를 제어하는 역할을 하는 프로그램을 말한다. 이런 각각..

[OS] 저장장치 구조 (Storage Structure)

기억장치라고 하면 크게 두가지가 생각난다. 주기억장치, 보조기억장치이다. 주기억장치 (Main Memory) RAM 이다. 컴퓨터 구조에서 잘 알려진 이 램이 주기억장치이다. 그렇다면 램의 역할은 무엇일까? CPU 는 주기억장치만 메모리에 접근하기 때문에, 실행 할 프로그램이 주기억장치에 적재 되어야 한다. 대개 DRAM, SRAM 을 사용한다. 폰노이만 구조 먼저 메모리로 부터 명령을 인출해 그 명령을 명령 레지스터에 저장한다. 연산에 필요한 데이터를 주기억장치에서 읽어서 명령어의 연산을 실행하고 결과 데이터를 주기억장치에 저장한다. 주기억장치의 한계 1. 용량이 작다. 2. 휘발성 저장장치이다. 재부팅 하면 램에 있던 내용들은 초기화 된다. 3. 보조 저장장치에 비해 비싸다. 보조 저장장치 - 기억 ..

(OS) 컴퓨터 시스템, Interrupt

컴퓨터 시스템 구성 ○ 컴퓨터 시스템의 구조 (예전 -> 현재) 과거와 현재의 컴퓨터 시스템 구성의 다른점? -> 예전에는 프린터, CD 등 장치별로 장치 제어기가 있었지만, 현재는 USB 와 같은 표준 제어기 사용이 확대 되었다. 컴퓨터 시스템 동작 우리가 컴퓨터를 처음 실행시킬때 무엇을 하는가? 우리는 우선 전원부터 킨다. 이 전원은 키는 것을 부팅이라고 하는데, 우리가 부팅하면 Bootstrap Program 이 실행된다. 이 Bootstrap Program 은 컴퓨터 부팅과 관련된 프로그램이기 때문에, 컴퓨터가 꺼져있다고 없어지면 안된다. 따라서 비휘발성 메모리인 ROM 또는 EPROM 에 저장된다. -> 펌웨어 Bootstrap Program (부팅) 컴퓨터를 키거나 재부팅 할때 수행되는 프로그..

운영체제 기초(개관)

운영체제 (OS) 운영체제는 정부와 같다. 하드웨어와 응용/시스템 프로그램 사이를 통제하고 제어해주는 역할을 한다. - 목표 컴퓨터 시스템의 구조에 대한 기본 지식 운영체제의 주요 구성 요소에 대한 지식 여러 유형의 계산환경 에 대한 개관제공 공개 운영체제에 대한 소개 운영체제가 하는 일 ○ 운영체제는 무엇일까? - 컴퓨터 사용자/응용 프로그램과 컴퓨터 하드웨어 사이에서 중재자 역할을 수행 1. 하드웨어/자원 관리 2. 응용프로그램 수행을 제어 3. 응용프로그램을 위한 기반을 제공 예를 들어서, 우리가 크롬을 실행한다던지, 카카오톡을 실행한다던지 응용 프로그램을 실행 시키려면, 하드웨어 에서 명령이 있어야 정상적으로 실행이 되는 것인데, 운영체제는 이 사이에서 역할을 수행한다고 생각하면 된다. ○ 운영체..

오픈소스 소프트웨어(OSS)

오픈소스 소프트웨어 란? - 수정 가능한 소스코드와 함께 배포되는 컴퓨터 소프트웨어 우리가 잘 알고 있는 C, C++, LINUX, MYSQL, REACT, Apache, PHP, PYTHON 등등 많은 프로그램들이 오픈소스 기술 기반으로 개발되었다. 많은 개발자들이 오픈소스를 활용하여 개발하고, 오픈소스가 열려 있기에 협업, 실력 향상 등 많은 부분에서 편리성과 효율성이 높아져 가고 있다. 오픈소스란 결국엔 다른 사람이 만든 소스를 오픈하여 많은 사람이 사용 할 수 있게 제공 한다는 것인데, 오픈소스도 저작권자에 의한 라이선스 규정이 있을 수 있으며, 이를 준수해야 한다. 즉, 오픈소스 라이선스는 우리가 오픈소스를 사용하는데 저작권 같은 느낌이라고 생각하면 될 것 같다. 오픈소스 소프트웨어 라이선스 -..

상관계수, 산점도, 회귀분석

상관계수를 알기전에 상관분석을 알아야 한다. 상관분석은 두 변수 간에 어떠한 선형적 관계를 갖고 있는지를 분석하는 방법이다. 상관계수의 값에 따라서, 두 변수가 독립적인지, 상관관계가 있는지 없는지를 분석 할 수 있는데 상관계수가 -1에 수렴할수록 두 변수는 음의 상관을 가지고, 0이면 독립, 1이 가까울수록 양의 상관을 갖는다. 데이터의 상관변수를 구해보면, df.corr() 변수가 4개가 나오는데, 이 상관계수들을 heatmap 을 사용하여 시각화 하려고 한다. annot = True 은 두 변수간의 상관계수 값을 표현해주었고, cmap 은 heatmap 의 color, mask 는 서로 중복되는 값을 방지하기 위해서, 작성해주었다. 상관계수 시각화 : https://seaborn.pydata.org..