요약·해설과 원문, 전문 번역을 서로 분리했습니다. API 이름, symbol, source path는 원문 표기를 사용합니다.
1. 요약·해설
원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.
Pages and windows
sysfs-bus-intel_th-devices-msc:23-46single은 2의 거듭제곱 page 수 하나, multi는 window별 page 수 목록을 사용합니다. win_switch에 1을 쓰면 multi 모드 window를 전환합니다.
Stop or wrap
sysfs-bus-intel_th-devices-msc:47-54stop_on_full은 마지막 window가 찼을 때 trace를 멈출지, wrapping해 계속할지 선택합니다.
2. 영어 원문 전체
번역 기준이 된 Linux v6.18.37 원문입니다. 줄 번호는 이 버전의 파일 좌표입니다.
원문 전체 펼치기
1
What: /sys/bus/intel_th/devices/<intel_th_id>-msc<msc-id>/wrap
2
Date: June 2015
3
KernelVersion: 4.3
4
Contact: Alexander Shishkin <[email protected]>
5
Description: (RW) Configure MSC buffer wrapping. 1 == wrapping enabled.
7
What: /sys/bus/intel_th/devices/<intel_th_id>-msc<msc-id>/mode
8
Date: June 2015
9
KernelVersion: 4.3
10
Contact: Alexander Shishkin <[email protected]>
11
Description: (RW) Configure MSC operating mode:
13
- "single", for contiguous buffer mode (high-order alloc);
14
- "multi", for multiblock mode;
15
- "ExI", for DCI handler mode;
16
- "debug", for debug mode;
17
- any of the currently loaded buffer sinks.
19
If operating mode changes, existing buffer is deallocated,
20
provided there are no active users and tracing is not enabled,
21
otherwise the write will fail.
23
What: /sys/bus/intel_th/devices/<intel_th_id>-msc<msc-id>/nr_pages
24
Date: June 2015
25
KernelVersion: 4.3
26
Contact: Alexander Shishkin <[email protected]>
27
Description: (RW) Configure MSC buffer size for "single" or "multi" modes.
29
In single mode, this is a single number of pages, has to be
30
power of 2. In multiblock mode, this is a comma-separated list
31
of numbers of pages for each window to be allocated. Number of
32
windows is not limited.
34
Writing to this file deallocates existing buffer (provided
35
there are no active users and tracing is not enabled) and then
36
allocates a new one.
38
What: /sys/bus/intel_th/devices/<intel_th_id>-msc<msc-id>/win_switch
39
Date: May 2019
40
KernelVersion: 5.2
41
Contact: Alexander Shishkin <[email protected]>
42
Description: (RW) Trigger window switch for the MSC's buffer, in
43
multi-window mode. In "multi" mode, accepts writes of "1", thereby
44
triggering a window switch for the buffer. Returns an error in any
45
other operating mode or attempts to write something other than "1".
47
What: /sys/bus/intel_th/devices/<intel_th_id>-msc<msc-id>/stop_on_full
48
Date: March 2020
49
KernelVersion: 5.7
50
Contact: Alexander Shishkin <[email protected]>
51
Description: (RW) Configure whether trace stops when the last available window
52
becomes full (1/y/Y) or wraps around and continues until the next
53
window becomes available again (0/n/N).
3. 한국어 전문 번역
영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.
MSC buffer wrapping
1-6| 항목 | 한국어 전문 번역 |
|---|---|
| What | /sys/bus/intel_th/devices/<intel_th_id>-msc<msc-id>/wrap |
| Date | 2015년 6월 |
| KernelVersion | 4.3 |
| Contact | Alexander Shishkin <[email protected]> |
| Description | (RW) MSC buffer wrapping을 구성합니다. 1이면 wrapping을 활성화합니다. |
MSC 동작 모드
7-22| 항목 | 한국어 전문 번역 |
|---|---|
| What | /sys/bus/intel_th/devices/<intel_th_id>-msc<msc-id>/mode |
| Date | 2015년 6월 |
| KernelVersion | 4.3 |
| Contact | Alexander Shishkin <[email protected]> |
| Description | (RW) MSC 동작 모드를 구성합니다. 동작 모드를 바꾸면 활성 사용자가 없고 tracing이 활성화되지 않은 경우 기존 buffer를 할당 해제합니다. 그렇지 않으면 쓰기가 실패합니다. |
| 모드 | 의미 |
|---|---|
| single | 연속 buffer 모드(high-order allocation) |
| multi | Multiblock 모드 |
| ExI | DCI handler 모드 |
| debug | Debug 모드 |
| loaded buffer sink | 현재 로드된 buffer sink 가운데 하나 |
MSC buffer page 수
23-37| 항목 | 한국어 전문 번역 |
|---|---|
| What | /sys/bus/intel_th/devices/<intel_th_id>-msc<msc-id>/nr_pages |
| Date | 2015년 6월 |
| KernelVersion | 4.3 |
| Contact | Alexander Shishkin <[email protected]> |
| Description | (RW) "single" 또는 "multi" 모드의 MSC buffer 크기를 구성합니다. Single 모드에서는 하나의 page 수이며 2의 거듭제곱이어야 합니다. Multiblock 모드에서는 할당할 각 window의 page 수를 쉼표로 구분한 목록입니다. Window 수에는 제한이 없습니다. 이 파일에 쓰면 활성 사용자가 없고 tracing이 활성화되지 않은 경우 기존 buffer를 할당 해제한 뒤 새 buffer를 할당합니다. |
MSC multi-window 전환
38-46| 항목 | 한국어 전문 번역 |
|---|---|
| What | /sys/bus/intel_th/devices/<intel_th_id>-msc<msc-id>/win_switch |
| Date | 2019년 5월 |
| KernelVersion | 5.2 |
| Contact | Alexander Shishkin <[email protected]> |
| Description | (RW) Multi-window 모드에서 MSC buffer의 window 전환을 시작합니다. "multi" 모드에서는 "1" 쓰기를 받아 buffer window를 전환합니다. 다른 동작 모드이거나 "1" 이외의 값을 쓰려고 하면 오류를 반환합니다. |
마지막 window 포화 시 동작
47-54| 항목 | 한국어 전문 번역 |
|---|---|
| What | /sys/bus/intel_th/devices/<intel_th_id>-msc<msc-id>/stop_on_full |
| Date | 2020년 3월 |
| KernelVersion | 5.7 |
| Contact | Alexander Shishkin <[email protected]> |
| Description | (RW) 마지막 사용 가능 window가 가득 찼을 때 trace를 중지할지(1/y/Y), wrapping해 다음 window를 다시 사용할 수 있을 때까지 계속할지(0/n/N) 구성합니다. |
Wrapping and sink mode
sysfs-bus-intel_th-devices-msc:1-22wrap은 순환 기록을 제어하고 mode는 single, multi, ExI, debug 또는 로드된 sink를 선택합니다. 활성 사용자나 tracing이 있으면 모드 변경이 실패합니다.