전체 글 228

[HTML] 사용자 입력 받기 - <form>, <label>, <input>

사용자 입력 받기 - 태그는 HTML에서 사용자 입력을 받는 양식을 생성하는 데 사용된다. 다양한 입력 필드, 버튼, 그리고 전송 방식을 제공한다. 주요 attribute를 알아보자. 태그의 주요 Attribute action : 양식을 제출할 때 데이터가 전송될 URL을 지정한다. /submit_form.php, https://example.com/process_form.php method : 데이터를 서버로 전송할 때 사용할 HTTP 메서드를 지정한다. GET, POST target : 데이터가 전송된 후 응답이 표시될 위치를 지정한다. _self : 현재 창에서 응답 표시(기본 값) _blank : 새 창에서 응답 표시 _parent : 부모 프레임에서 응답 표시 _top : 최상위 창에서 응답 표..

[HTML] 웹페이지에 유튜브 삽입 - <Ifram>

태그는 다른 웹페이지를 현재 페이지에 삽입하는 데 사용된다. 주로 외부 웹페이지를 내부에 포함시키는 데 사용된다. 많이 사용되는 Attribute를 알아보자. 유용한 Attribute src (필수): 삽입할 외부 페이지의 URL 지정 width, height: 의 가로 및 세로 크기를 지정 title: 에 대한 제목을 지정한다. 웹 접근성을 고려할 때 중요한 속성이다. sandbox: 보안을 강화하기 위해 의 실행 환경을 제한한다. allow: 에서 허용할 작업을 지정한다. allow="fullscreen" 과 같이 사용하면, 에서 전체 화면을 허용하는 것이다. frameborder: 주위에 테두리를 표시할지 여부를 정한다. scrolling: 내에서 스크롤바를 표시할지 여부를 정한다. 사용 예시 We..

[HTML] 웹사이트 간단하게 만들기

지금까지 배운 내용들을 종합해서 복습할 겸 생활코딩 강의에서 제시해 주는 웹사이트를 만들어보자. 먼저 아래 내용을 보기 전에 웹사이트를 보고, 직접 만들어 보는 것을 추천한다. WEB1 - Welcome HTML CSS JavaScript WEB The World Wide Web (abbreviated WWW or the Web) is an information space where documents and other web resources are identified by Uniform Resource Locators (URLs), interlinked by hypertext links, and can be accessed via the Internet web-n.github.io 위의 웹페이지를 만들..

[HTML] HTML의 기본 구조 <title>, <meta>와 <a>

HTML의 기본 구조 html 웹페이지 또한 마치 책처럼 제목, 본문, 번역 언어 등의 구조를 가지고 있다. 지금까지 우리가 만든 html들은 파일명이 제목이다. 이 파일들의 제목을 지정하기 위해서 태그를 사용한다. 태그는 검색엔진이 웹페이지를 분석할 때 가장 중요하게 생각하므로 태그는 꼭 사용해야한다. ​ 또, 한 번씩 웹페이지를 열다보면 아래와 같이 텍스트가 깨지는 것을 볼 수 있다. 이것은 작성하면서 사용한 인코딩 방식과 웹브라우저가 사용하는 인코딩 방식이 달라서 발생한다. 이 문제를 해결하기 위해 태그를 사용한다. 태그는 웹 서버와 웹 브라우저간 상호 교환되는 정보를 정의하는데 사용한다. 태그 사이에 입력하는 특수 태그로, 디자인과는 무관하고 문서 자체의 특성을 담고있다. 메타태그에 대한 자세한 ..

[HTML] 부모 태그와 리스트 태그 <ul>, <ol>, <li>

html의 태그들은 계층적인 구조를 가지고 있는 트리와도 비슷하다. 트리의 요소들을 형제, 부모, 자식으로 부르듯이 html에도 부모, 자식, 형제 태그가 존재한다. ​ 예를 들어서 아래의 코드를 살펴보자. Heading here Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet. item 1 item 2 item 3 다른 모르는 태그들은 일단 무시하고, li, ul 태그부터 알아보자. li 태그는 목차(list)를 나타내는데 쓰인다. 위에서 보이는 것 처럼 li 태그로 묶인 컨텐츠들은 하나의 목차가 되어서 줄바꿈도 자동으로 해준다. 그리고 ul 태그는 목차(li 태그)들을 컨텐츠로 하여 비슷한 흐름의 목차들끼리 묶어주는 역할을 한다. 여기서 ul 태그가 ..

[HTML] 줄바꿈<br> VS 단락<p>, <strong> vs <b> ,속성과 <img>

줄바꿈 VS 단락 태그를 통해서 줄바꿈을 할 수 있다. 단락을 바꾸려면 을 여러 번 사용하므로써 단락을 바꿀 수 있다. 태그는 , 와는 달리 감싸야하는 컨텐츠가 없기때문에 태그를 닫지 않는다. 그런데, 단락(paragraph)을 바꾸는 태그가 하나 더 존재한다. 태그를 통해 단락을 그룹핑할 수 있고, 컨텐츠를 그룹핑하면서 단락을 나누는 만큼 과는 다르게 태그를 닫아줘야한다. ​ 는 단락을 표현하는데 사용한다. 은 문장을 강제로 줄바꿈 하고싶을 때 사용한다. 물론 는 단락 간의 간격이 고정되어있고, 은 손쉽게 단락 간격을 조절할 수 있지만 코드의 가독성이나 태그 안에서의 줄바꿈 등의 이유로 조금 귀찮더라도 단락을 구분할 때는 태그를 쓰는 것을 추천한다. When to use vs. What's the ve..

[OS] Zombie & Orphan process와 PCB, Context Switch, fork

Zombie & Orphan process Zombie process는 defunct process라고도 부르며, 종료를 했지만 운영체제가 내부에서 관리하는 프로세스 테이블에서 아직 종료되지 않았다고 인식되는 프로세스를 Zombie 프로세스라 한다. 사실 종료되지 않았다고 인식되는 것은 아니고 그냥 남겨두는 것인데, PARENT Process가 CHILD의 pid를 알 수 없어서 좀비상태로 놔두는 것이다. 예시를 보면 child 프로세스는 1초만에 먼저 종료된다. 그리고 부모 프로세스는 30초간 대기하고 종료되는데, parent는 child의 상태값을 가져가야 하기에 좀비 상태로 두는 것이다. 의도하지 않은 많은 좀비 프로세스는 시스템을 망가지게 하므로 조심해야 한다. Orphan process는 고아 ..

CS/Operating System 2024.04.03

[OS] 프로세스의 개념과 생성, fork 시스템 콜

Program vs Process vs Processor vs Task, Job Program : 순서 있는 명령어의 집합 프로그램은 storage(하드디스크)에 있다. 그게 실행되면 프로세스가 된다. Process : 프로그램이 실행 중인 것 프로세스는 메모리에 있다. Processor : CPU 프로세서는 메모리에 있는 프로세스의 코드를 한줄한줄 가져와서 실행한다. Task, Job Task와 Process는 혼용해서 사용한다. 그런데 Job은 좀 더 큰 개념이다. job은 하나의 기능 느낌이다. DB를 액세스 하는 프로세스, 계산하는 프로세스 등등의 프로세스를 합해서 입금이라는 job이 된다. Job과 Task도 혼용해서 사용하기도 한다. Process Concept 프로세스는 실행중인 프로그램의 ..

CS/Operating System 2024.04.02

[OS] I/O에서 데이터 전송 방식과 Timers, Protected Instruction

DMA I/O 컨트롤러 내부에 조그마한 버퍼 메모리가 있다. 그 버퍼 메모리에서 메인 메모리쪽으로 복사사키는걸 input, 반대를 output이라 한다. 이러한 과정, I/O에서 데이터를 전송하는 방식은 Programmed I/O와 DMA 방식이 있다. Programmed I/O 데이터를 옮기는 작업을 CPU가 관여한다. 특별한 I/O instruction(protected instruction) 방법이 있고 memory-mapped 방법도 있다. I/O 작업때문에 CPU가 묶여있기에 비효율적일 수 있다. Programmed I/O 방식은 전송 데이터 양이 적을때 사용한다. 키보드에서 1byte만 옮기는 상황이라면 CPU가 빨리 복사해서 옮기는게 더 낫다. DMA I/O 장치가 직접 옮긴다. DMA란 D..

CS/Operating System 2024.04.01

[OS] 운영 체제의 내부 구조와 이벤트들 - Interrupt, Exception, Signal

OS Internals 운영체제는 커널로 명령어를 처리한다. 커널은 하드웨어와 소프트웨어 간의 인터페이스 역할을 하며, 시스템의 리소스를 관리하고 프로세스 간의 통신을 관리한다. 또, 운영체제는 애플리케이션과 System Call Interface로 통신한다. 애플리케이션 계층을 User space, 커널 부분을 Kernel space라 한다. 디바이스(하드웨어) 별로 어떤 드라이브가 필요한지 등의 정보를 Kernel space의 Arch-dependent kernel code가 관리한다. 시스템 콜 인터페이스와 커널은 운영체제의 다른 부분이며 다른 역할을 한다. 시스템 콜 인터페이스는 어플리케이션이 운영체제를 호출할 수 있는 인터페이스다. 커널은 시스템 콜을 수신하고 해당 요청을 처리하여 하드웨어와 상..

CS/Operating System 2024.03.31