html태그 안녕하세요. 오늘은 html을 공부하면서 알게 된 내용을 적어보려고 합니다. html에서 줄 바꿈을 위한 태그입니다. 닫지 않는 태그 단락(paragraph)을 표현하는 태그 1. 닫지 않는 태그(줄 바꿈) 보통 대부분의 태그는 이런식으로 열고 이렇게 닫습니다. 하지만 이번 태그는 닫지 않아도 되는 태그중에 하나입니다. 역할은 줄 바꿈입니다. 줄 바꿈을 해줄 부분에 태그를 넣어주시면 됩니다. (ex) 내용 내용--> 내용/줄바꿈/내용(아래 사진 참고) 글로 설명하려니 힘드네요. 위의 html을 크롬으로 들어가 보겠습니다. 아래 사진처럼 줄바꿈이 됩니다. 2. 단락(paragraph)을 표현하는 태그 단락을 표현하기 위해 사용할 태그는 태그입니다. 이 태그는 위의 태그와는 달리 열고 닫아줘야 ..
하드(HDD)를 SSD에 복사 [SSD 마이그레이션] 안녕하세요. 얼마 전에 제 서브 노트북의 용량이 부족해져서 가격이 싼 WD GREEN SSD를 넣어주었습니다. 넣어준 SSD에 다시 윈도우를 설치하고 원래 사용하던 다른 프로그램들 역시 설치하기 귀찮았습니다. 그래서 방법을 찾다가 Macrium Reflect란 무료 프로그램을 사용했습니다. (사실 방법을 찾다가 Acronis True Image WD Edition를 써봤는데 안됨...왜지..) 오늘은 이 프로그램을 다운/설치하고 이 프로그램으로 하드디스크를 복사하는 방법까지 알려드리려고 합니다. Macrium Reflect를 다운받고 설치하기 SSD에 기존 하드의 내용을 복사하기(SSD 마이그레이션) 1. Macrium Reflect 다운 및 설치 먼..
간단한 웹사이트 만들기 안녕하세요. 오늘은 html을 공부해보려고 합니다. 매우 기초적인 부분이라 간단하고 별거 없습니다. html문서 만들어보기 글에 강조 태그 적용해보기(, ) 1. 아무거나 입력했을 때 먼저 .html파일을 하나 만들고 아무 글이나 써보겠습니다. 아톰 에디터를 이용해서 1.html이라는 파일에 아무 글이나 입력했습니다. (크흠흠... 아무 글입니다. 게으른 주인장 블로그 구독!!!) 그럼 이 내용을 크롬으로 열어보겠습니다.(다른 브라우저로 열어도 됩니다.) 크롬으로 열어보니 주소창에는 1.html의 경로가 보입니다. 크롬의 화면에는 제가 1.html에 작성한 내용이 그대로 보이네요. 2. 강조(굵은 글씨) 그럼 이번에는 위의 html에 작성한 글을 강조(굵은 글씨) 해보겠습니다. 강..
Visual Studio 2019 설치하기 안녕하세요. 오늘은 visual studio 2019를 설치해보려고 합니다. visual studio 다운 visual studio 설치 ※파일을 설치하고 다시 시작해야 하니 주의하세요. 1. 설치 파일 다운로드 먼저 visual studio 2019를 설치하기 위해서 아래 사이트로 들어가 주세요. https://visualstudio.microsoft.com/ko/vs/ Visual Studio 2019 | 무료 다운로드 Visual Studio에서 코드 완성, 디버깅, 테스트, Git 관리 및 클라우드 배포를 사용하여 코드를 작성할 수 있습니다. 지금 Community를 무료로 다운로드하세요. visualstudio.microsoft.com ...더보기 위 ..
Interrupt, Exception [Operating System] interrupt = 하드웨어장치로 생성(Generated by hardware devices) exception = 실행중인 소프트웨어에 의해 생성됨.(Generated by software executong instructions) interrupt(hardware) polling(spinning) polling은 계속해서 체크하는 방법이다.(while(1){확인}이런것으로 이해하면 이해하기 쉬울 것 같다.) 해당 작업이 끝나기 전까지 다른 작업이 불가능하다. ex) xx야 뭐뭐 끝났니? 끝났니? 끝났니? 이렇게 계속 물어보는 것. hardware interrupt 하드웨어가 알아서 cpu한테 알려주는 방식 hardware int..
간단한 웹서버 만들기(simple webserver)[C, Linux, fork] 안녕하세요. 오늘은 유닉스라는 과목을 들으면서 진행했던 프로젝트입니다. 간단한 웹서버를 만들기 multiple client의 요청을 동시에 처리가능하게 만들어야 함. 웹서버를 시작할때 인자로 서비스할 폴더의 위치와 포트를 받는다. total.cgi(nn~mm까지의 총 합을 구해서 화면에 출력) 전송 기록을 log파일로 저장한다.(로그: 클라이언트 아이피, 전송한 파일명, 전송한 크기) 코드 코드는 아래와 같습니다. 코드 파일은 깃허브에서 다운받으실 수 있습니다.(깃허브에 쓰레드로 만들다 만 웹서버도 있습니다.) https://github.com/ykarr/webserver/blob/master/webserver_fork_0..
thread 기반 동시 동작 서버[C, Linux] 안녕하세요. 오늘은 유닉스라는 과목을 들으면서 제가 만든 코드를 올려보려고 합니다. fork기반의 동시 동작 서버 위의 프로그램을 pthread를 이용해서 thread기반 동시 동작 서버로 변경 코드 코드는 아래와 같습니다. 코드 파일은 깃허브에서 다운받으실 수 있습니다. (귀찮아서 나중에 링크 올릴게요.) 1. fork동시동작 서버 2.thread기반의 동시 동작 서버 3.client로 사용한 코드 실행 환경: 왼쪽(학교에서 제공한 서버), 오른쪽(라즈베리파이-라즈비안) 1. fork기반의 동시동작 서버 입니다.(왼쪽이 클라이언트 오른쪽이 서버) 처음에 포트설정을 잘못해서 클라이언트 부분 사진에 connect 오류가 있었습니다. 2. thread기반의..
서버, 클라이언트 연습 프로그램[구구단, C, Linux] 안녕하세요. 오늘은 유닉스라는 과목을 들으면서 제가 만든 코드를 올려보려고 합니다. TCP서버 프로그램 server는 client가 접속하면 random한 구구단 문제를 client로 전송 client는 답을 입력하고 서버로 전송 server는 답이 맞았는지 틀렸는지 client로 전송 client는 server로 부터의 결과를 출력 코드 코드는 아래와 같습니다. 코드 파일은 깃허브에서 다운받으실 수 있습니다. (귀찮아서 나중에 링크 올릴게요.) 1. tcp서버(server) 코드 2. tcp구구단 클라이언트(client) 코드 실행 학교에서 제공한 서버와 제가 가지고 있는 라즈베리파이(라즈비안)를 이용해서 코드를 실행했습니다.(리눅스 환경) 1..
Thread 연습 프로그램[C, Linux] 안녕하세요. 오늘은 유닉스라는 과목을 들으면서 제가 만든 코드를 올려보려고 합니다. Parameter로 thread의 수를 입력받고, 입력받은 수 만큼 thread를 생성. 각 쓰레드는 생성된 순서의 번호와 자기 thread id를 출력. 생성된 순서의 번호는 thread function의 Parameter로 넘길 것. 코드 코드는 아래와 같습니다. 코드 파일은 깃허브에서 다운받으실 수 있습니다. (귀찮아서 나중에 링크 올릴게요.) 실행 실행은 리눅스 환경에서 했습니다.(라즈베리파이3b+ 라즈비안) 주요 코드 설명 흠흠.. 만들 때 조금 실수를 해서 7개를 만들었는데 0,1,2,3,4,5,6 이렇게 나오네요.(뭐 틀린 것은 아니니까..ㅋㅋㅋ) 일단 값을 넘기는..
thread를 사용한 구구단 프로그램[C, Linux] 안녕하세요. 오늘은 유닉스라는 과목을 들으면서 제가 만든 코드를 올려보려고 합니다. 구구단을 출력하는 thread program thread function이 한번 불리면 한 단을 출력 한번에 한단씩 섞이지 않고 출력(pthread_join사용) 코드 코드는 아래와 같습니다. 코드 파일은 깃허브에서 다운받으실 수 있습니다. (귀찮아서 나중에 링크 올릴게요.) 실행 실행을 하기 위해서 리눅스 환경(라즈베리파이 라즈비안)에서 실행했습니다. 컴파일은 gcc로 아래처럼 했습니다. (-lpthread 주의!!) 이렇게 컴파일한 파일을 실행해보면 아래 사진처럼 정상적으로 실행이 됩니다. (물론 9단까지 다 잘 됩니다.) 먼저 쓰레드 프로그래밍이 좋은점. 1. ..
fork를 사용한 구구단 프로그램[C, Linux] 안녕하세요. 오늘은 유닉스라는 과목을 들으면서 제가 만든 코드를 올려보려고 합니다. 1. 특정한 구구단 하나를 출력하는 구구단 프로그램 2. child process로 구구단을 출력하는 프로그램 2-1. (exec 함수 사용, 자식 프로세스가 출력을 완료할 때 까지 parent process는 대기) 코드 코드는 아래와 같습니다. 코드 파일은 깃허브에서 다운받으실 수 있습니다. (귀찮아서 나중에 링크 올릴게요.) 1. argv[]로 넘겨주면 해당 단을 출력하는 프로그램 2. 자식 프로세스로 위의 프로그램을 실행시키고 매개변수로 2~9까지 넘겨주는 프로그램 실행 해당 파일들은 리눅스환경(라즈베리파이 라즈비안)에서 실행한 결과입니다. 1. argv[]로 2..
여러 개의 프로세스를 사용해서 소수를 출력[C, Linux] 안녕하세요. 오늘은 유닉스라는 과목을 들으면서 제가 만든 코드를 올려보려고 합니다. 100,000까지의 모든 prime number(소수)를 출력하는 프로그램 위의 프로그램과 동일하지만 여러개의 프로세스를 이용하는 프로그램(병렬처리) time 명령을 이용해서 몇 초가 걸리는지 확인 코드 코드는 아래와 같습니다. 코드 파일은 깃허브에서 다운받으실 수 있습니다. (귀찮아서 나중에 링크 올릴게요.) 1. 하나의 프로세스로 소수를 출력하는 프로그램 2. 4개의 프로세스를 사용해서 소수를 출력하는 프로그램 실행 아래의 사진은 라즈베리파이 3b+ (라즈비안)에서 실행했을 때의 사진입니다. 1. 하나의 프로세스로 소수를 구하는 프로그램을 실행했을 때 2. ..