본문 바로가기

TIL11

video태그의 playsInline 속성 - 모바일 기기 전체화면 재생을 방지하기 위한 속성 playsinline A Boolean attribute indicating that the video is to be played "inline", that is within the element's playback area. Note that the absence of this attribute does not imply that the video will always be played in fullscreen. (boolean 타입의 속성으로, 영상이 해당 요소가 재생되는 영역 내에서 'inline'으로 재생되게 한다. 이 요소가 없다고 언제나 꼭 항상 전체화면으로 재생된다는 의미는 아니다!) / MDN(https://developer.mozilla.org/en-US/docs/Web/HTML/Ele.. 2023. 8. 28.
[JS] 자바스크립트에서 함수 정의 - 함수 정의 이전에 함수 호출하기 자바스크립트에서 함수를 선언하는 방법으로 함수 선언문과 화살표 함수만 있다고 생각했는데 공부를 해보니 총 4가지 방법이 있다. 1. 함수 선언문 function sayHello() { console.log("Hello!"); } 2. 화살표 함수 const hello = () => {console.log("Hello!")} 3. Funciton 생성자 - 다른 대안이 없이 꼭 써야 할 때만 쓰자.. const hello = new Function('console.log("Hello!")') 4. 함수 리터럴 const hello = function() { console.log("Hello!") } 처음 자바스크립트를 공부했을 때, 자바스크립트에서는 함수 호이스팅이 가능하므로 함수 정의 이전에 함수 호출이.. 2023. 4. 27.
[OS] pintos의 interrupt frame 이란 + do_iret 함수가 하는 일 인터럽트 프레임 및 do_iret 함수 인터럽트 프레임이란 무엇인지, 그리고 do_iret 에서는 어떤 일을 하는 건지 이제서야 조금 알 것 같아 별도로 글을 작성한다. struct intr_frame do_iret을 이해하려면 인터럽트 프레임 구조체의 크기와, 인터럽트 프레임 구조체 내의 gp_registers 구조체, 그리고 나머지 멤버변수들의 크기를 알고있어야 한다. 데이터 크기 각각의 사이즈를 모두 출력해보았다. (뭘 굳이 찍어봐야 아나 싶은 것들도 있지만 난 아직도 데이터 크기가 어렵다 😭 ) printf( "인터럽트 프레임 사이즈: %d \\n", sizeof(struct intr_frame)); printf( "gp_registers 사이즈: %d \\n", sizeof(struct gp_r.. 2022. 11. 29.
[OS] Pintos - system call 호출 및 흐름 유저모드에서 유저 프로세스가 호출한 시스템 콜이 어떻게 커널모드로 바뀌고, 어떻게 해당 시스템 콜에 해당하는 함수가 호출되는지에 대한 과정이 헷갈려서 며칠동안 찾아해멨다. 반에 똑똑한 친구들이 많아서 드디어 흐름을 이해할 수 있어서 짧게 정리해보려고 한다. 우선 유저프로그램에서 fork() 시스템콜을 호출하는 상황을 예로 들어 흐름을 설명해보려고 한다. 1. 유저프로그램에서 fork(스레드이름); 으로 fork 호출 2. fork() : syscall1(fork의 시스템콜 번호, 스레드이름); 호출 /* lib/user/syscall.c 파일 */ pid_t fork (const char *thread_name){ return (pid_t) syscall1 (SYS_FORK, thread_name); }.. 2022. 11. 25.
[자료구조] Red Black Tree (레드 블랙 트리) | 레드 블랙 트리란, 경계 노드, black-height(흑색높이), Left-Rotate(좌회전), Right-Rotate(우회전), C언어 구현 레드 블랙 트리(Red Black Tree)는 이진 검색 트리의 한 종류이다. 이진 검색 트리가 무엇인지는 아래 문단에서 간단하게만 정리해두었으나, 이진검색트리의 순회나 노드의 삽입, 삭제 과정등을 전혀 모른다면 이진 검색트리를 먼저 공부한 후 레드 블랙트리를 공부하는 게 더 좋은 공부 순서일 것 같다! 💡 이진 검색 트리 이진트리의 한 종류. 각 노드들은 key, 부모 노드(p), 왼쪽 자식노드(left), 오른쪽 자식노드(right) 필드를 가지고 있고, 부모나 자식 노드가 없는 경우 각 필드는 NIL*값을 가진다. 부모가 없는 루트노드는 부모가 NIL인 유일한 노드이다. (*NIL이란 아무것도 없음을 뜻한다) 이진트리와 이진 검색 트리의 차이점은 모든 노드에서 왼쪽 자식은 부모노드보다 작거나 같고,.. 2022. 10. 24.
백준 11049. (PyPy3 1등 먹은 풀이!) 행렬체인곱셈 | Python 다이나믹 프로그래밍 🔔 문제 설명은 백준 문제 링크로 대신합니다 11049번: 행렬 곱셈 순서 첫째 줄에 입력으로 주어진 행렬을 곱하는데 필요한 곱셈 연산의 최솟값을 출력한다. 정답은 231-1 보다 작거나 같은 자연수이다. 또한, 최악의 순서로 연산해도 연산 횟수가 231-1보다 작거나 같 www.acmicpc.net 수많은 시도 끝에 성공한 행렬체인곱셈 문제.. CLRS 책을 한참 읽고서야 이해했고, 문제를 푸는 데도 한참이 걸렸던 문제다. 이 문제는 제대로 상세히 기록을 해 둬야 할 것 같다!! 처음에는 하향식 + 메모이제이션으로 풀었는데 계속해서 시간초과가 났다. 이 문제를 먼저 맞춘 팀원들은 다 상향식으로 풀었다고 해서 상향식으로 다시 풀었다. 사실 CLRS에서 상향식으로 푸는 부분은 도저히가 이해가 안가서 하향식.. 2022. 10. 19.
반응형