Tiếng AnhTiếng PhápTiếng Tây Ban Nha

Biểu tượng yêu thích OnWorks

erl - Trực tuyến trên đám mây

Chạy erl trong nhà cung cấp dịch vụ lưu trữ miễn phí OnWorks qua Ubuntu Online, Fedora Online, trình giả lập trực tuyến Windows hoặc trình giả lập trực tuyến MAC OS

Đây là erl lệnh có thể chạy trong nhà cung cấp dịch vụ lưu trữ miễn phí OnWorks bằng cách sử dụng một trong nhiều máy trạm trực tuyến miễn phí của chúng tôi như Ubuntu Online, Fedora Online, trình giả lập trực tuyến Windows hoặc trình mô phỏng trực tuyến MAC OS

CHƯƠNG TRÌNH:

TÊN


erl - Trình giả lập Erlang

MÔ TẢ


Sản phẩm sai lầm chương trình khởi động hệ thống thời gian chạy Erlang. Các chi tiết chính xác (ví dụ, liệu
sai lầm là một tập lệnh hoặc một chương trình và những chương trình khác mà nó gọi) phụ thuộc vào hệ thống.

Người dùng Windows có thể muốn sử dụng người lang thang thay vào đó, chương trình chạy trong cửa sổ riêng của nó
với thanh cuộn và hỗ trợ chỉnh sửa dòng lệnh. Các sai lầm chương trình trên Windows cung cấp không
chỉnh sửa dòng trong shell của nó và trên Windows 95 không có cách nào để cuộn lại văn bản mà
đã cuộn ra khỏi màn hình. Các sai lầm chương trình phải được sử dụng, tuy nhiên, trong đường ống hoặc nếu bạn
muốn chuyển hướng đầu vào hoặc đầu ra tiêu chuẩn.

Lưu ý:
Kể từ phiên bản ERTS 5.9 (OTP-R15B), hệ thống thời gian chạy sẽ theo mặc định không ràng buộc lịch trình
tới các bộ xử lý logic. Để biết thêm thông tin, hãy xem tài liệu của + sbt cờ hệ thống.

XUẤT KHẨU


sai lầm

Khởi động hệ thống thời gian chạy Erlang.

Các đối số có thể được chia thành giả lập cờ, cờđồng bằng đối số:

* Bất kỳ đối số nào bắt đầu bằng ký tự + được hiểu là một giả lập cờ.

Như được chỉ ra bởi tên, cờ giả lập kiểm soát hành vi của trình giả lập.

* Bất kỳ đối số nào bắt đầu bằng ký tự - (gạch nối) được hiểu là cờ
phần này sẽ được chuyển đến phần Erlang của hệ thống thời gian chạy, hơn thế nữa
đặc biệt cho trong đó quy trình hệ thống, xem trong đó(3erl).

Sản phẩm trong đó quá trình tự nó diễn giải một số cờ này, trong đó cờ. Nó cũng
lưu trữ mọi cờ còn lại, người sử dụng cờ. Sau này có thể được truy xuất bằng
gọi init: get_argument / 1.

Có thể lưu ý rằng có một số lượng nhỏ cờ "-" mà bây giờ thực sự
là cờ giả lập, hãy xem mô tả bên dưới.

* Đối số thuần túy không được giải thích theo bất kỳ cách nào. Chúng cũng được lưu trữ bởi
trong đó xử lý và có thể được truy xuất bằng cách gọi init: get_plain_arguments / 0. Trơn
các đối số có thể xảy ra trước cờ đầu tiên hoặc sau -- lá cờ. Ngoài ra,
lá cờ -thêm khiến mọi thứ sau đó trở thành các lập luận đơn giản.

Ví dụ:

% erl + W w -sname arnie + R 9 -s my_init -extra + bertie
(arnie @ host) 1> init: get_argument (sname).
{ok, [["arnie"]]}
(arnie @ host) 2> init: get_plain_arguments ().
["+ bertie"]

Đây +W w+R 9 là cờ giả lập. -s my_init là một cờ init, được diễn giải bởi
trong đó. -tên của Arnie là một cờ người dùng, được lưu trữ bởi trong đó. Nó được đọc bởi Kernel và sẽ
khiến hệ thống thời gian chạy Erlang trở nên phân tán. Cuối cùng, mọi thứ sau
-thêm (đó là, + bertie) được coi là lập luận đơn giản.

%erl -myflag 1
1> init:get_argument(cờ của tôi).
{được rồi, [["1"]]}
2> init: get_plain_arguments ().
[]

Đây là cờ người dùng -myflag 1 được chuyển đến và lưu trữ bởi trong đó tiến trình. Nó là một
cờ do người dùng xác định, có lẽ được sử dụng bởi một số ứng dụng do người dùng xác định.

CỜ


Trong danh sách sau, các cờ init được đánh dấu (cờ init). Trừ khi được chỉ định khác, tất cả
các cờ khác là cờ người dùng, mà các giá trị có thể được truy xuất bằng cách gọi
init: get_argument / 1. Lưu ý rằng danh sách cờ người dùng không đầy đủ, có thể có
cờ bổ sung, ứng dụng cụ thể mà thay vào đó được ghi lại trong
tài liệu ứng dụng.

--(cờ init):
Mọi thứ sau đây -- lên đến lá cờ tiếp theo (-lá cờ or + cờ) được coi là đơn giản
đối số và có thể được truy xuất bằng cách sử dụng init: get_plain_arguments / 0.

-Ứng dụng qua Val:
Đặt thông số cấu hình ứng dụng qua đến giá trị Val cho ứng dụng
Các Ứng Dụng, Xem ứng dụng(5)ứng dụng(3erl).

-args_file Tên phim:
Đối số dòng lệnh được đọc từ tệp Tên phim. Các đối số được đọc từ
tập tin thay thế '-args_file Tên phim'cờ trên dòng lệnh kết quả.

Tập tin Tên phim phải là một tệp văn bản thuần túy và có thể chứa các nhận xét và lệnh
đối số dòng. Nhận xét bắt đầu bằng ký tự # và tiếp tục cho đến cuối tiếp theo của
ký tự dòng. Dấu gạch chéo ngược (\\) được sử dụng làm ký tự trích dẫn. Tất cả dòng lệnh
đối số được chấp nhận bởi sai lầm được phép, cũng là -args_file Tên phim lá cờ. Hãy cẩn thận
không gây ra sự phụ thuộc vòng tròn giữa các tệp có chứa -args_file cờ,
Tuy nhiên.

Sản phẩm -thêm cờ được đối xử đặc biệt. Phạm vi của nó kết thúc ở cuối tệp. Tranh luận
theo một -thêm cờ được di chuyển trên dòng lệnh vào -thêm phần, tức là
cuối dòng lệnh theo sau -thêm cờ.

-async_shell_start:
Vỏ Erlang ban đầu không đọc đầu vào của người dùng cho đến khi quy trình khởi động hệ thống có
đã được hoàn thành (Erlang 5.4 trở lên). Cờ này vô hiệu hóa bắt đầu đồng bộ hóa
và cho phép trình bao khởi động song song với phần còn lại của hệ thống.

-khởi động Tập tin:
Chỉ định tên của tệp khởi động, Tệp.boot, được sử dụng để khởi động hệ thống. Nhìn thấy
trong đó(3erl). Trừ khi Tập tin chứa một đường dẫn tuyệt đối, hệ thống tìm kiếm Tệp.boot
trong hiện tại và $ ROOT / thùng thư mục.

Mặc định là $ ROOT / bin / start.boot.

-boot_var Mỗi Chỉ đạo:
Nếu tập lệnh khởi động chứa một biến đường dẫn Mỗi khác hơn $ ROOT, biến này là
mở rộng thành Chỉ đạo. Được sử dụng khi các ứng dụng được cài đặt trong một thư mục khác
$ ROOT / lib, Xem systools: make_script / 1,2.

-code_path_cache:
Bật bộ đệm đường dẫn mã của máy chủ mã, xem (3erl).

-biên dịch Mod1 Mod2 ...:
Biên dịch các mô-đun được chỉ định và sau đó kết thúc (với mã thoát khác XNUMX nếu
biên dịch một số tệp không thành công). Ngụ ý -không đầu vào. Không khuyến khích - sử dụng
sai lầm thay thế.

-config Config:
Chỉ định tên của tệp cấu hình, Cấu hình.config, được sử dụng để cấu hình
các ứng dụng. Nhìn thấy ứng dụng(5)ứng dụng(3erl).

-kết nối_tất cả sai:
Nếu có cờ này, toàn cầu sẽ không duy trì một mạng được kết nối đầy đủ
các nút Erlang phân tán, và sau đó không thể sử dụng đăng ký tên toàn cầu. Nhìn thấy
toàn cầu(3erl).

-bánh quy Cookie:
Cờ lỗi thời mà không có bất kỳ hiệu ứng nào và lỗi chính tả phổ biến đối với -setcookie. Sử dụng -setcookie
thay thế.

- tách rời:
Khởi động hệ thống thời gian chạy Erlang được tách ra khỏi bảng điều khiển hệ thống. Hữu ích cho việc chạy bộ
các quy trình daemon và nền. Ngụ ý -không đầu vào.

-emu_args:
Hữu ích cho việc gỡ lỗi. In ra các đối số thực tế được gửi đến trình giả lập.

-env Biến Giá trị:
Đặt biến môi trường hệ điều hành máy chủ Biến đến giá trị Giá trị cho Erlang
hệ thống thời gian chạy. Thí dụ:

% erl -env HIỂN THỊ GIn: 0

Trong ví dụ này, hệ thống thời gian chạy Erlang được bắt đầu với DISPLAY môi trường
biến được đặt thành gin: 0.

-kỷ niệm kinh nghiệm(cờ init):
Làm cho trong đó đánh giá biểu thức kinh nghiệm, Xem trong đó(3erl).

-thêm(cờ init):
Mọi thứ sau đây -thêm được coi là đối số đơn giản và có thể được truy xuất bằng cách sử dụng
init: get_plain_arguments / 0.

-tim:
Bắt đầu theo dõi nhịp tim của hệ thống thời gian chạy Erlang. Nhìn thấy tim(3erl).

-trên:
Khởi động hệ thống thời gian chạy Erlang dưới dạng một nút ẩn, nếu nó được chạy dưới dạng một nút phân tán.
Các nút ẩn luôn thiết lập các kết nối ẩn với tất cả các nút khác ngoại trừ các nút
trong cùng một nhóm toàn cầu. Các kết nối ẩn không được xuất bản trên một trong hai
các nút được kết nối, tức là cả hai nút được kết nối đều không phải là một phần của kết quả từ
nút / 0 trên nút khác. Xem thêm các nhóm toàn cầu ẩn, toàn cầu_group(3erl).

-các đám ma Máy chủ:
Chỉ định địa chỉ IP cho các máy chủ mà máy chủ khởi động Erlang đang chạy, xem
erl_boot_server(3erl). Cờ này là bắt buộc nếu -bộ nạp inet cờ có mặt.

Địa chỉ IP phải được cung cấp ở dạng chuẩn (bốn số thập phân được phân tách bằng
các khoảng thời gian, ví dụ "150.236.20.74". Tên máy chủ không được chấp nhận, nhưng là một chương trình phát sóng
địa chỉ (tốt nhất là giới hạn trong mạng cục bộ) là.

-Tôi Id:
Chỉ định danh tính của hệ thống thời gian chạy Erlang. Nếu nó được chạy dưới dạng phân phối
nút, Id phải giống với tên được cung cấp cùng với -tên của or -Tên
cờ.

-init_debug:
Làm cho trong đó viết một số thông tin gỡ lỗi trong khi diễn giải tập lệnh khởi động.

-instr(cờ giả lập):
Chọn một hệ thống thời gian chạy Erlang có công cụ (máy ảo) để chạy, thay vì
bình thường. Khi chạy một hệ thống thời gian chạy công cụ, một số dữ liệu sử dụng tài nguyên
có thể được thu thập và phân tích bằng cách sử dụng mô-đun cụ. Về mặt chức năng, nó hoạt động
chính xác như một hệ thống thời gian chạy Erlang thông thường.

-bộ nạp Loader:
Chỉ định phương pháp được sử dụng bởi erl_prim_loader để tải các mô-đun Erlang vào hệ thống.
Xem erl_prim_loader(3erl). Hai Loader các phương pháp được hỗ trợ, Tập tin điện tửinet. Tập tin điện tử
có nghĩa là sử dụng hệ thống tệp cục bộ, đây là mặc định. inet có nghĩa là sử dụng một máy chủ khởi động trên
một máy khác, và -Tôi, -các đám ma-setcookie cờ cũng phải được chỉ định.
If Loader là một cái gì đó khác, người dùng đã cung cấp Loader chương trình cổng được bắt đầu.

-làm:
Làm cho hệ thống thời gian chạy Erlang được gọi làm cho tất cả() trong thư mục làm việc hiện tại và
sau đó chấm dứt. Nhìn thấy làm cho(3erl). Ngụ ý -không đầu vào.

-Đàn ông Mô-đun:
Hiển thị trang hướng dẫn sử dụng cho mô-đun Erlang Mô-đun. Chỉ hỗ trợ trên Unix.

-chế độ tương tác | nhúng:
Cho biết hệ thống có nên tải mã động hay không (tương tác), hoặc nếu tất cả mã
nên được tải trong quá trình khởi tạo hệ thống (nhúng), xem (3erl). Mặc định là
tương tác.

-Tên Họ tên:
Biến hệ thống thời gian chạy Erlang thành một nút phân tán. Cờ này gọi tất cả mạng
máy chủ cần thiết để một nút trở nên phân tán. Nhìn thấy net_kernel(3erl). Nó cũng là
đảm bảo rằng epd chạy trên máy chủ hiện tại trước khi khởi động Erlang. Nhìn thấy epd(1).

Tên của nút sẽ là Tên @ Máy chủ, Nơi Máy chủ là tên máy chủ đủ điều kiện của
máy chủ hiện tại. Đối với tên viết tắt, hãy sử dụng -tên của thay vào đó cờ.

-không đầu vào:
Đảm bảo rằng hệ thống thời gian chạy Erlang không bao giờ cố gắng đọc bất kỳ đầu vào nào. Ngụ ý
-shell.

-shell:
Khởi động hệ thống thời gian chạy Erlang không có trình bao. Cờ này làm cho nó có thể có
Hệ thống thời gian chạy Erlang như một thành phần trong một loạt các đường ống UNIX.

-stick:
Vô hiệu hóa cơ sở thư mục cố định của máy chủ mã Erlang, xem (3erl).

-vỏ vàng:
Gọi shell Erlang cũ từ Erlang 3.3. Vỏ cũ vẫn sử dụng được.

-pa dir1 dir2 ...:
Thêm các thư mục được chỉ định vào đầu đường dẫn mã, tương tự như
mã: add_pathsa / 1. Thấy (3erl). Thay thế cho -pa, nếu một số thư mục
sẽ được thêm vào trước đường dẫn mã và các thư mục có chung cha mẹ
thư mục, thư mục mẹ đó có thể được chỉ định trong ERL_LIBS môi trường
Biến đổi. Nhìn thấy (3erl).

-pz dir1 dir2 ...:
Thêm các thư mục được chỉ định vào cuối đường dẫn mã, tương tự như
mã: add_pathsz / 1. Thấy (3erl).

-con đường dir1 dir2 ...:
Thay thế đường dẫn được chỉ định trong tập lệnh khởi động. Nhìn thấy kịch bản(5).

-proto_dist Proto:
Chỉ định một giao thức cho phân phối Erlang.

inet_tcp:
TCP qua IPv4 (mặc định)

inet_tls:
phân phối qua TLS / SSL

inet6_tcp:
TCP qua IPv6

Ví dụ: để khởi động các nút phân tán IPv6:

% erl-tên [email được bảo vệ] -proto_dist inet6_tcp

-remsh Node:
Khởi động Erlang với một trình bao từ xa được kết nối với Node.

-rsh chương trình:
Chỉ định một giải pháp thay thế cho rsh để bắt đầu một nút nô lệ trên máy chủ từ xa. Nhìn thấy
nô lệ(3erl).

-chạy Đường [Chức năng [Arg1, arg2, ...]](cờ init):
Làm cho trong đó gọi hàm được chỉ định. Func mặc định là Bắt đầu. Nếu không có đối số
được cung cấp, chức năng được giả định là hiếm bằng 0. Nếu không, nó được giả định là của
arity 1, lấy danh sách [Arg1, Arg2, ...] như đối số. Tất cả các đối số được chuyển dưới dạng
dây. Nhìn thấy trong đó(3erl).

-s Đường [Chức năng [Arg1, arg2, ...]](cờ init):
Làm cho trong đó gọi hàm được chỉ định. Func mặc định là Bắt đầu. Nếu không có đối số
được cung cấp, chức năng được giả định là hiếm bằng 0. Nếu không, nó được giả định là của
arity 1, lấy danh sách [Arg1, Arg2, ...] như đối số. Tất cả các đối số được chuyển dưới dạng
các nguyên tử. Nhìn thấy trong đó(3erl).

-setcookie Cookie:
Đặt cookie ma thuật của nút thành Cookie, Xem erlang: set_cookie / 2.

-shutdown_time Thời gian:
Chỉ định khoảng thời gian (tính bằng mili giây) trong đó quy trình được phép chi tiêu
tắt hệ thống. Nếu như Thời gian ms đã trôi qua, tất cả các quy trình vẫn tồn tại
bị giết. Mặc định là vô cực.

-tên của Họ tên:
Biến hệ thống thời gian chạy Erlang thành một nút phân tán, tương tự như -Tên, nhưng
phần tên máy chủ của tên nút Tên @ Máy chủ sẽ là tên ngắn gọn, không đầy đủ
đủ điều kiện.

Đây đôi khi là cách duy nhất để chạy Erlang phân tán nếu DNS (Tên miền
Hệ thống) không chạy. Không thể có giao tiếp giữa các nút đang chạy với
-tên của cờ và những người chạy với -Tên cờ, vì tên nút phải là duy nhất trong
hệ thống Erlang phân tán.

-smp [bật | tự động | tắt]:
-smp cho phép-smp khởi động hệ thống thời gian chạy Erlang với hỗ trợ SMP được bật. Điều này
có thể bị lỗi nếu không có hệ thống thời gian chạy có hỗ trợ SMP. -smp tự động bắt đầu
Hệ thống thời gian chạy Erlang với hỗ trợ SMP được kích hoạt nếu nó có sẵn và nhiều hơn một
bộ xử lý logic được phát hiện. -smp vô hiệu hóa khởi động hệ thống thời gian chạy mà không có SMP
hỗ trợ.

LƯU Ý: Hệ thống thời gian chạy có hỗ trợ SMP sẽ không khả dụng trên tất cả được hỗ trợ
nền tảng. Xem thêm +S cờ.

-phiên bản(cờ giả lập):
Làm cho trình giả lập in ra số phiên bản của nó. Giống như sai lầm +V.

GIẢ LẬP CỜ


sai lầm gọi mã cho trình giả lập Erlang (máy ảo), hỗ trợ
cờ sau:

+a kích thước:
Kích thước ngăn xếp được đề xuất, tính bằng kilowords, cho các luồng trong nhóm luồng không đồng bộ. Phạm vi hợp lệ
là 16-8192 kilowords. Kích thước ngăn xếp được đề xuất mặc định là 16 kilowords, tức là 64
kilobyte trên kiến ​​trúc 32 bit. Kích thước mặc định nhỏ này đã được chọn vì
số lượng luồng không đồng bộ có thể khá lớn. Kích thước mặc định là đủ cho trình điều khiển
được phân phối bằng Erlang / OTP, nhưng có thể không đủ lớn cho các ứng dụng động khác
được liên kết trong các trình điều khiển sử dụng driver_async () chức năng. Lưu ý rằng giá trị
được thông qua chỉ là một gợi ý và nó thậm chí có thể bị bỏ qua trên một số nền tảng.

+A kích thước:
Đặt số luồng trong nhóm luồng không đồng bộ, phạm vi hợp lệ là 0-1024. Nếu chủ đề
hỗ trợ có sẵn, mặc định là 10.

+B [c | d | i]:
Sản phẩm c tùy chọn làm Ctrl-C ngắt trình bao hiện tại thay vì gọi trình giả lập
xử lý ngắt. Các d tùy chọn (giống như chỉ định +B không có tùy chọn bổ sung) vô hiệu hóa
trình xử lý ngắt. Các i tùy chọn làm cho trình giả lập bỏ qua bất kỳ tín hiệu ngắt nào.

Nếu c tùy chọn được sử dụng với vỏ cũ trên Unix, Ctrl-C sẽ khởi động lại quá trình shell
hơn là làm gián đoạn nó.

Lưu ý rằng trên Windows, cờ này chỉ áp dụng cho người lang thang, Chứ không phải sai lầm (vỏ cũ). Ghi chú
cũng có Ctrl-ngắt được sử dụng thay Ctrl-C trên Windows.

+c đúng | sai:
Bật hoặc tắt thời gian sửa chữa:

đúng:
Bật sửa thời gian. Đây là mặc định nếu việc sửa thời gian được hỗ trợ trên
nền tảng cụ thể.

sai:
Tắt sửa thời gian.

Để tương thích ngược, giá trị boolean có thể bị bỏ qua. Điều này được hiểu là
+c sai.

+C no_time_warp | single_time_warp | multi_time_warp:
Thiết lập thời gian làm cong chế độ:

no_time_warp:
Không Thời gian Làm cong Chế độ (mặc định)

single_time_warp:
Độc thân Thời gian Làm cong Chế độ

multi_time_warp:
Đa Thời gian Làm cong Chế độ

+d:
Nếu trình giả lập phát hiện lỗi bên trong (hoặc hết bộ nhớ), nó sẽ theo mặc định
tạo ra cả một kết xuất sự cố và một kết xuất cốt lõi. Tuy nhiên, kết xuất cốt lõi sẽ không
hữu ích vì nội dung của đống quy trình bị phá hủy bởi quá trình tạo kết xuất sự cố.

Sản phẩm +d tùy chọn hướng dẫn trình giả lập chỉ tạo ra một kết xuất lõi và không có kết xuất sự cố nếu
một lỗi nội bộ được phát hiện.

đang gọi erlang: dừng / 1 với một đối số chuỗi sẽ vẫn tạo ra một kết xuất sự cố. Trên Unix
hệ thống gửi một quy trình giả lập tín hiệu SIGUSR1 cũng sẽ buộc kết xuất sự cố.

+e Con số:
Đặt số lượng bảng ETS tối đa.

+ ec:
Buộc nén tùy chọn trên tất cả các bảng ETS. Chỉ nhằm mục đích kiểm tra và đánh giá.

+ fnl:
Máy ảo hoạt động với tên tệp như thể chúng được mã hóa bằng cách sử dụng mã hóa ISO-latin-1,
không cho phép các ký tự Unicode có điểm mã vượt quá 255.

Xem STDLIB Của người dùng Hướng dẫn để biết thêm thông tin về tên tệp unicode. Lưu ý rằng điều này
giá trị cũng áp dụng cho các tham số dòng lệnh và biến môi trường (xem STDLIB
Của người dùng Hướng dẫn).

+ fnu [{w | i | e}]:
Máy ảo hoạt động với tên tệp như thể chúng được mã hóa bằng UTF-8 (hoặc một số hệ thống khác
mã hóa Unicode cụ thể). Đây là mặc định trên các hệ điều hành thực thi
Mã hóa Unicode, tức là Windows và MacOS X.

Sản phẩm + fnu chuyển đổi có thể được theo sau bởi w, i, hoặc là e để kiểm soát cách tập tin được mã hóa sai
tên sẽ được báo cáo. w có nghĩa là một cảnh báo được gửi đến error_logger bất cứ khi nào
tên tệp được mã hóa sai sẽ bị "bỏ qua" trong danh sách thư mục, i có nghĩa là những
tên tệp được mã hóa sai sẽ bị bỏ qua một cách im lặng và e nghĩa là hàm API sẽ
trả về lỗi bất cứ khi nào gặp phải tên tệp (hoặc thư mục) được mã hóa sai. w
là mặc định. Lưu ý rằng tệp: read_link / 1 sẽ luôn trả về lỗi nếu liên kết
trỏ đến tên tệp không hợp lệ.

Xem STDLIB Của người dùng Hướng dẫn để biết thêm thông tin về tên tệp unicode. Lưu ý rằng điều này
giá trị cũng áp dụng cho các tham số dòng lệnh và biến môi trường (xem STDLIB
Của người dùng Hướng dẫn).

+ fna [{w | i | e}]:
Lựa chọn giữa + fnl+ fnu được thực hiện dựa trên cài đặt ngôn ngữ hiện tại trong
Hệ điều hành, nghĩa là nếu bạn đã đặt thiết bị đầu cuối của mình cho mã hóa UTF-8, thì hệ thống tệp sẽ
dự kiến ​​sử dụng cùng một mã hóa cho tên tệp. Đây là mặc định trên tất cả các hoạt động
hệ thống ngoại trừ MacOS X và Windows.

Sản phẩm + fna chuyển đổi có thể được theo sau bởi w, i, hoặc là e. Điều này sẽ có hiệu lực nếu ngôn ngữ
cài đặt gây ra hành vi của + fnu để được chọn. Xem mô tả của + fnu ở trên.
Nếu cài đặt ngôn ngữ gây ra hành vi + fnl được chọn, sau đó w, i, hoặc là e sẽ
không có bất kỳ ảnh hưởng.

Xem STDLIB Của người dùng Hướng dẫn để biết thêm thông tin về tên tệp unicode. Lưu ý rằng điều này
giá trị cũng áp dụng cho các tham số dòng lệnh và biến môi trường (xem STDLIB
Của người dùng Hướng dẫn).

+ hms Kích thước máy:
Đặt kích thước heap mặc định của các quy trình thành kích thước Kích thước máy.

+ hmbs Kích thước máy:
Đặt kích thước heap ảo nhị phân mặc định của các quy trình thành kích thước Kích thước máy.

+ hpds Kích thước máy:
Đặt kích thước từ điển quy trình ban đầu của quy trình thành kích thước Kích thước máy.

+K đúng | sai:
Bật hoặc tắt chức năng thăm dò hạt nhân nếu trình giả lập hỗ trợ nó. Vỡ nợ
is sai (tàn tật). Nếu trình giả lập không hỗ trợ thăm dò hạt nhân, và +K cờ là
được chuyển đến trình giả lập, một cảnh báo được đưa ra khi khởi động.

+l:
Cho phép theo dõi tải tự động, hiển thị thông tin trong khi tải mã.

+L:
Không tải thông tin về tên tệp nguồn và số dòng. Điều này sẽ tiết kiệm một số
bộ nhớ, nhưng ngoại lệ sẽ không chứa thông tin về tên tệp và dòng
số.

+ MFlag Giá trị:
Các cờ cụ thể của bộ cấp phát bộ nhớ, xem erts_alloc(3erl) của chúng tôi để biết thêm thông tin.

+n Hành vi:
Điều khiển hành vi của tín hiệu đến các cổng.

Đối với OTP-R16, tín hiệu đến các cổng thực sự được phân phối không đồng bộ. Lưu ý rằng các tín hiệu
luôn được ghi nhận là không đồng bộ. Việc triển khai cơ bản có,
tuy nhiên, trước đó đã phân phối các tín hiệu này một cách đồng bộ. Erlang được viết đúng
chương trình sẽ có thể xử lý điều này mà không có bất kỳ vấn đề nào. Lỗi trong Erlang hiện có
Tuy nhiên, các chương trình đưa ra giả định sai về tín hiệu đến các cổng có thể khó
tìm thấy. Công tắc này đã được giới thiệu để ít nhất là giúp dễ dàng so sánh hơn
các hành vi trong thời kỳ chuyển tiếp. Lưu ý rằng điều này cờ is phản đối như của nó
giới thiệu và được lên lịch xóa trong OTP-R17. Hành vi nên là một trong những
các ký tự sau:

d:
Mặc định. Tín hiệu không đồng bộ. Quá trình gửi tín hiệu đến một cổng có thể
tiếp tục thực hiện trước khi tín hiệu được chuyển đến cảng.

s:
Tín hiệu đồng bộ. Quá trình gửi tín hiệu đến một cổng sẽ không tiếp tục
thực hiện cho đến khi tín hiệu đã được phân phối. Nên có thể được sử dụng để thử nghiệm và
gỡ lỗi.

a:
Tín hiệu không đồng bộ. Là mặc định, nhưng một quy trình gửi tín hiệu thậm chí sẽ
thường xuyên hơn tiếp tục thực hiện trước khi tín hiệu được chuyển đến cổng.
Nếu có thể được sử dụng để thử nghiệm và gỡ lỗi.

+ máy tính Phạm vi:
Đặt phạm vi ký tự mà hệ thống sẽ coi là có thể in được trong heuristic
phát hiện các chuỗi. Điều này thường ảnh hưởng đến trình bao, trình gỡ lỗi và định dạng io:
các hàm (khi ~ tp được sử dụng trong chuỗi định dạng).

Hiện tại hai giá trị cho Phạm vi được hỗ trợ:

latin1:
Mặc định. Chỉ các ký tự trong dải ISO-latin-1 mới được coi là có thể in được,
có nghĩa là một ký tự có điểm mã> 255 sẽ không bao giờ được coi là
có thể in được và danh sách chứa các ký tự như vậy sẽ được hiển thị dưới dạng danh sách
số nguyên chứ không phải chuỗi văn bản bằng công cụ.

unicode:
Tất cả các ký tự Unicode có thể in được đều được xem xét khi xác định xem danh sách
số nguyên sẽ được hiển thị trong cú pháp chuỗi. Điều này có thể cho kết quả bất ngờ nếu
ví dụ: phông chữ của bạn không bao gồm tất cả các ký tự Unicode.

Se cũng io: printable_range / 0.

+P Số | di sản:
Đặt số lượng tối đa các quy trình hiện có đồng thời cho hệ thống này nếu
Con số được chuyển dưới dạng giá trị. Phạm vi hợp lệ cho Con số is [1024-134217727]

LƯU Ý: Mức tối đa thực tế được chọn có thể lớn hơn nhiều so với Con số đi qua. Hiện tại
hệ thống thời gian chạy thường xuyên, nhưng không phải luôn luôn, chọn một giá trị là lũy thừa của 2. Điều này
Tuy nhiên, có thể được thay đổi trong tương lai. Giá trị thực đã chọn có thể được kiểm tra bằng
gọi erlang: system_info (process_limit).

Giá trị mặc định là 262144

If di sản được chuyển dưới dạng giá trị, thuật toán kế thừa để phân bổ quy trình
số nhận dạng sẽ được sử dụng. Sử dụng thuật toán kế thừa, số nhận dạng sẽ được phân bổ trong
thời trang ngày càng gia tăng nghiêm ngặt cho đến khi đạt được số nhận dạng lớn nhất có thể. Ghi chú
rằng thuật toán này gặp phải các vấn đề về hiệu suất và có thể
hoàn cảnh vô cùng đắt đỏ. Thuật ngữ kế thừa không được dùng nữa và
di sản tùy chọn được lên lịch xóa trong OTP-R18.

+Q Số | di sản:
Đặt số lượng tối đa các cổng hiện có đồng thời cho hệ thống này nếu một Số
được chuyển dưới dạng giá trị. Phạm vi hợp lệ cho Con số is [1024-134217727]

LƯU Ý: Mức tối đa thực tế được chọn có thể lớn hơn nhiều so với thực tế Con số thông qua.
Hiện tại, hệ thống thời gian chạy thường, nhưng không phải lúc nào cũng chọn một giá trị là sức mạnh của
2. Tuy nhiên, điều này có thể được thay đổi trong tương lai. Giá trị thực được chọn có thể là
kiểm tra bằng cách gọi điện erlang: system_info (port_limit).

Giá trị mặc định được sử dụng bình thường 65536. Tuy nhiên, nếu hệ thống thời gian chạy có thể
xác định số lượng bộ mô tả tệp tối đa mà nó được phép mở và giá trị này
lớn hơn 65536, giá trị đã chọn sẽ tăng lên giá trị lớn hơn hoặc bằng
số lượng bộ mô tả tệp tối đa có thể được mở.

Trên Windows, giá trị mặc định được đặt thành 8196 bởi vì các giới hạn hệ điều hành thông thường được thiết lập
cao hơn hầu hết các máy có thể xử lý.

Trước đây, biến môi trường ERL_MAX_PORTS đã được sử dụng để thiết lập mức tối đa
số lượng cổng hiện có đồng thời. Biến môi trường này không được dùng nữa và
đã lên lịch xóa trong OTP-R17, nhưng vẫn có thể được sử dụng.

If di sản được chuyển dưới dạng giá trị, thuật toán kế thừa để phân bổ số nhận dạng cổng
sẽ được sử dụng. Sử dụng thuật toán kế thừa, các số nhận dạng sẽ được phân bổ một cách nghiêm ngặt
thời trang ngày càng tăng cho đến khi đạt được số nhận dạng lớn nhất có thể. Lưu ý rằng điều này
thuật toán gặp phải các vấn đề về hiệu suất và trong một số trường hợp nhất định có thể
cực kỳ tốn kém. Thuật ngữ kế thừa không được dùng nữa và di sản Tùy chọn là
đã lên lịch xóa trong OTP-R18.

+R số phát hành:
Đặt chế độ tương thích.

Cơ chế phân phối không tương thích ngược theo mặc định. Cờ này đặt
trình giả lập ở chế độ tương thích với bản phát hành Erlang / OTP trước đó số phát hành. Các
số phát hành phải trong phạm vi <hiện tại phát hành> -2 .. phát hành>. Điều này
giới hạn trình giả lập, giúp nó có thể giao tiếp với các nút Erlang (như
cũng như các nút C- và Java) đang chạy bản phát hành trước đó.

Lưu ý: Đảm bảo tất cả các nút (nút Erlang-, C- và Java) của hệ thống Erlang phân tán
là của cùng một bản phát hành Erlang / OTP hoặc từ hai bản phát hành Erlang / OTP khác nhau X và Y,
Ở đâu tất cả các Các nút Y có chế độ tương thích X.

+r:
Buộc di chuyển khối bộ nhớ ets khi phân bổ lại.

+ rg Nhóm độc giảGiới hạn:
Giới hạn số lượng nhóm trình đọc được sử dụng bởi khóa đọc / ghi được tối ưu hóa để đọc
hoạt động trong hệ thống thời gian chạy Erlang. Theo mặc định, giới hạn nhóm người đọc bằng 64.

Khi số lượng bộ lập lịch nhỏ hơn hoặc bằng giới hạn nhóm người đọc, mỗi
lập lịch có nhóm độc giả của riêng nó. Khi số lượng bộ lập lịch lớn hơn
giới hạn nhóm người đọc, người lên lịch chia sẻ nhóm người đọc. Nhóm người đọc được chia sẻ xuống cấp
khóa đọc và hiệu suất mở khóa đọc trong khi một lượng lớn nhóm trình đọc suy giảm
hiệu suất khóa ghi, vì vậy giới hạn là sự cân bằng giữa hiệu suất để đọc
các hoạt động và hiệu suất cho các hoạt động ghi. Mỗi nhóm độc giả hiện đang tiêu thụ
64 byte trong mỗi khóa đọc / ghi. Cũng lưu ý rằng hệ thống thời gian chạy sử dụng trình đọc chia sẻ
nhóm được hưởng lợi từ ràng buộc lịch trình đến hợp lý bộ vi xử lý, vì nhóm độc giả
được phân phối tốt hơn giữa các bộ lập lịch.

+S Bộ lập lịch: SchedulerOnline:
Đặt số lượng chuỗi của bộ lập lịch để tạo và các chuỗi của bộ lập lịch để đặt trực tuyến
khi hỗ trợ SMP đã được bật. Giá trị tối đa cho cả hai là 1024. Nếu Erlang
hệ thống thời gian chạy có thể xác định số lượng bộ xử lý logic được cấu hình và
bộ xử lý logic có sẵn, Lập lịch sẽ mặc định là bộ xử lý logic
đã định cấu hình, và Bộ lập lịch trực tuyến sẽ mặc định cho các bộ xử lý logic có sẵn;
nếu không, các giá trị mặc định sẽ là 1. Lập lịch có thể được bỏ qua nếu : SchedulerOnline
không và ngược lại. Số lượng bộ lập lịch trực tuyến có thể được thay đổi tại thời điểm chạy thông qua
erlang: system_flag (Schedrs_online, Lập lịch trực tuyến).

If Lập lịch or Bộ lập lịch trực tuyến được chỉ định là một số âm, giá trị là
bị trừ khỏi số lượng bộ xử lý lôgic mặc định được định cấu hình hoặc lôgic
bộ xử lý có sẵn, tương ứng.

Chỉ định giá trị 0 cho Lập lịch or Bộ lập lịch trực tuyến đặt lại số lượng
các chủ đề của bộ lập lịch hoặc các chủ đề của bộ lập lịch trực tuyến tương ứng với giá trị mặc định của nó.

Tùy chọn này bị bỏ qua nếu trình giả lập không được bật hỗ trợ SMP (xem phần -smp
cờ).

+ SP SchedulersPercentage: SchedulersOnlinePercentage:
Tương tự như +S nhưng sử dụng tỷ lệ phần trăm để đặt số lượng chuỗi trình lập lịch để tạo,
dựa trên các bộ xử lý logic được định cấu hình và các chuỗi của bộ lập lịch để đặt trực tuyến, dựa trên
bộ xử lý logic khả dụng khi hỗ trợ SMP đã được kích hoạt. Các giá trị được chỉ định phải
lớn hơn 0. Ví dụ: + SP 50:25 đặt số lượng chủ đề của bộ lập lịch thành 50%
trong số các bộ xử lý logic được định cấu hình và số luồng của bộ lập lịch trực tuyến là 25%
của các bộ xử lý logic có sẵn. Phần trăm có thể được bỏ qua nếu
: SchedulersOnlinePercentage không và ngược lại. Số lượng người đặt lịch trực tuyến có thể
được thay đổi vào thời gian chạy qua erlang: system_flag (Schedrs_online, Lập lịch trực tuyến).

Tùy chọn này tương tác với +S cài đặt. Ví dụ: trên một hệ thống có 8 lõi logic
được cấu hình và có sẵn 8 lõi logic, sự kết hợp của các tùy chọn +S 4:4 + SP
50:25 (theo một trong hai thứ tự) dẫn đến 2 chủ đề của bộ lập lịch (50% của 4) và 1 bộ lập lịch
chủ đề trực tuyến (25% trong tổng số 4).

Tùy chọn này bị bỏ qua nếu trình giả lập không được bật hỗ trợ SMP (xem phần -smp
cờ).

+ SDcpu DirtyCPUSchedulers: DirtyCPUSchedulersOnline:
Đặt số luồng bộ lập lịch CPU bẩn để tạo và bộ lập lịch CPU bẩn
chủ đề để đặt trực tuyến khi hỗ trợ phân luồng đã được bật. Mức tối đa cho cả hai
giá trị là 1024 và mỗi giá trị bị giới hạn thêm bởi các cài đặt cho bình thường
bộ lập lịch: số luồng bộ lập lịch CPU bẩn được tạo không được vượt quá số
số luồng trình lập lịch bình thường được tạo và số luồng trình lập lịch CPU bẩn
trực tuyến không thể vượt quá số lượng các chủ đề thông thường của bộ lập lịch trực tuyến (xem +S+ SP
cờ để biết thêm chi tiết). Theo mặc định, số luồng bộ lập lịch CPU bẩn được tạo
bằng số luồng bộ lập lịch bình thường được tạo và số CPU bẩn
các chủ đề trực tuyến của bộ lập lịch bằng số lượng các chủ đề bình thường của bộ lập lịch trực tuyến.
Bộ lập lịch CPU bẩn có thể được bỏ qua nếu : DirtyCPUSchedulersOnline không và ngược lại.
Số lượng bộ lập lịch CPU bẩn trực tuyến có thể được thay đổi tại thời điểm chạy thông qua
erlang: system_flag (dirty_cpu_schedulers_online, DirtyCPUSchedulersTrực tuyến).

Tùy chọn này bị bỏ qua nếu trình giả lập không bật hỗ trợ phân luồng.
Hiện nay, điều này tùy chọn is thử nghiệm và chỉ được hỗ trợ nếu trình giả lập
được định cấu hình và xây dựng với hỗ trợ cho các bộ lập lịch bẩn được bật (nó bị tắt bởi
mặc định).

+ SDPcpu DirtyCPUSchedulersPercentage: DirtyCPUSchedulersOnlinePercentage:
Tương tự như + SDcpu nhưng sử dụng tỷ lệ phần trăm để đặt số bộ lập lịch CPU bẩn
luồng để tạo và số luồng bộ lập lịch CPU bẩn để đặt trực tuyến khi
hỗ trợ phân luồng đã được kích hoạt. Các giá trị đã chỉ định phải lớn hơn 0. Đối với
thí dụ, + SDPcpu 50:25 đặt số luồng bộ lập lịch CPU bẩn thành 50%
bộ xử lý logic được định cấu hình và số luồng bộ lập lịch CPU bẩn trực tuyến để
25% bộ xử lý logic có sẵn. DirtyCPUSchedulersPhần trăm có thể bị bỏ qua
if : DirtyCPUSchedulersOnlinePercentage không và ngược lại. Số lượng CPU bẩn
lịch trực tuyến có thể được thay đổi tại thời gian chạy thông qua
erlang: system_flag (dirty_cpu_schedulers_online, DirtyCPUSchedulersTrực tuyến).

Tùy chọn này tương tác với + SDcpu cài đặt. Ví dụ, trên một hệ thống có 8 lôgic
các lõi được cấu hình và 8 lõi logic có sẵn, sự kết hợp của các tùy chọn + SDcpu
4:4 + SDPcpu 50:25 (theo một trong hai thứ tự) dẫn đến 2 luồng bộ lập lịch CPU bẩn (50%
4) và 1 luồng bộ lập lịch CPU bẩn trực tuyến (25% trong tổng số 4).

Tùy chọn này bị bỏ qua nếu trình giả lập không bật hỗ trợ phân luồng.
Hiện nay, điều này tùy chọn is thử nghiệm và chỉ được hỗ trợ nếu trình giả lập
được định cấu hình và xây dựng với hỗ trợ cho các bộ lập lịch bẩn được bật (nó bị tắt bởi
mặc định).

+ SDio Lịch trình iOS:
Đặt số lượng luồng bộ lập lịch I / O bẩn sẽ tạo khi hỗ trợ phân luồng có
đã được kích hoạt. Phạm vi hợp lệ là 0-1024. Theo mặc định, số lượng bộ lập lịch I / O bẩn
chủ đề được tạo là 10, giống như số lượng chủ đề mặc định trong không đồng bộ Chủ đề hồ bơi
.

Tùy chọn này bị bỏ qua nếu trình giả lập không bật hỗ trợ phân luồng.
Hiện nay, điều này tùy chọn is thử nghiệm và chỉ được hỗ trợ nếu trình giả lập
được định cấu hình và xây dựng với hỗ trợ cho các bộ lập lịch bẩn được bật (nó bị tắt bởi
mặc định).

+ sFlag Giá trị:
Lập lịch cờ cụ thể.

+ sbt Loại ràng buộc:
Đặt loại ràng buộc của bộ lập lịch.

Người lên lịch cũng có thể bị ràng buộc bằng cách sử dụng + stbt lá cờ. Sự khác biệt duy nhất giữa chúng
hai cờ là cách xử lý các lỗi sau:

* Ràng buộc của bộ lập lịch không được hỗ trợ trên nền tảng cụ thể.

* Không có cấu trúc liên kết CPU khả dụng. Đó là hệ thống thời gian chạy không thể
tự động phát hiện cấu trúc liên kết CPU và không người sử dụng xác định CPU cấu trúc liên kết đã được thiết lập.

Nếu bất kỳ lỗi nào trong số này xảy ra khi + sbt đã được thông qua, hệ thống thời gian chạy sẽ
in thông báo lỗi và từ chối bắt đầu. Nếu bất kỳ lỗi nào trong số này xảy ra khi + stbt
đã được thông qua, hệ thống thời gian chạy sẽ im lặng bỏ qua lỗi và khởi động
sử dụng bộ lập lịch không ràng buộc.

Hiện có giá trị Loại ràng buộcs:

u:
không ràng buộc - Bộ lập lịch sẽ không bị ràng buộc với bộ xử lý logic, tức là, hoạt động
hệ thống quyết định nơi thực thi các luồng của bộ lập lịch và thời điểm di chuyển chúng. Điều này
là mặc định.

ns:
không_lây lan - Những người lập lịch có số nhận dạng của người lập lịch gần sẽ bị ràng buộc càng gần
có thể trong phần cứng.

ts:
chủ đề_lây lan - Luồng đề cập đến các luồng phần cứng (ví dụ: siêu luồng của Intel).
Bộ lập lịch có số nhận dạng bộ lập lịch thấp, sẽ bị ràng buộc với phần cứng đầu tiên
của mỗi lõi, sau đó các bộ lập lịch có số nhận dạng bộ lập lịch cao hơn sẽ
liên kết với luồng phần cứng thứ hai của mỗi lõi, v.v.

ps:
bộ xử lý_spread - Lịch trình sẽ được lan truyền như chủ đề_lây lan, nhưng cũng đã qua
chip xử lý vật lý.

s:
lan tràn - Lịch trình sẽ được rải càng nhiều càng tốt.

không:
no_node_thread_ Lan truyền - Giống chủ đề_lây lan, nhưng nếu nhiều NUMA (Không đồng nhất
Các nút Truy cập Bộ nhớ) tồn tại, các bộ lập lịch sẽ được trải rộng trên một nút NUMA tại một
thời gian, tức là, tất cả các bộ xử lý logic của một nút NUMA sẽ bị ràng buộc với các bộ lập lịch trong
sự nối tiếp.

nnps:
no_node_processor_ Lan truyền - Giống bộ xử lý_spread, nhưng nếu nhiều nút NUMA
tồn tại, các bộ lập lịch sẽ được trải rộng trên một nút NUMA tại một thời điểm, tức là, tất cả đều logic
bộ xử lý của một nút NUMA sẽ bị ràng buộc với bộ lập lịch theo trình tự.

tnnps:
thread_no_node_processor_s Lan - Một sự kết hợp của chủ đề_lây lan
no_node_processor_ Lan truyền. Bộ lập lịch sẽ được trải rộng trên các chuỗi phần cứng trên
NUMA nút, nhưng bộ lập lịch sẽ chỉ được trải rộng trên các bộ xử lý trong nội bộ một
NUMA nút tại một thời điểm.

db:
mặc định_bind - Ràng buộc bộ lập lịch theo cách mặc định. Hiện tại mặc định là
thread_no_node_processor_s Lan (có thể thay đổi trong tương lai).

Ràng buộc các bộ lập lịch hiện chỉ được hỗ trợ trên Linux, Solaris, FreeBSD mới hơn,
và hệ thống Windows.

Nếu không có cấu trúc liên kết CPU nào khả dụng khi + sbt cờ được xử lý và Loại ràng buộc là bất kỳ
loại khác với u, hệ thống thời gian chạy sẽ không khởi động được. Cấu trúc liên kết CPU có thể được
được xác định bằng cách sử dụng + sct lá cờ. Lưu ý rằng + sct cờ có thể phải được thông qua trước khi
các + sbt cờ trên dòng lệnh (trong trường hợp không có cấu trúc liên kết CPU nào được tự động
phát hiện).

Hệ thống thời gian chạy sẽ theo mặc định không ràng buộc bộ lập lịch với bộ xử lý logic.

LƯU Ý: Nếu hệ thống thời gian chạy Erlang là quy trình hệ điều hành duy nhất liên kết
luồng cho bộ xử lý logic, điều này cải thiện hiệu suất của hệ thống thời gian chạy.
Tuy nhiên, nếu hệ điều hành khác xử lý (chẳng hạn như thời gian chạy Erlang khác
hệ thống) cũng liên kết các luồng với bộ xử lý logic, có thể có một hiệu suất
hình phạt thay thế. Trong một số trường hợp, hình phạt thực hiện này có thể rất nặng. Nêu Đây la
trường hợp này, bạn nên không ràng buộc các bộ lên lịch.

Các lịch trình bị ràng buộc như thế nào là vấn đề quan trọng. Ví dụ: trong các tình huống khi có ít
đang chạy các quy trình hơn là bộ lập lịch trực tuyến, hệ thống thời gian chạy cố gắng di chuyển
các quy trình để lập lịch với số nhận dạng của bộ lập lịch thấp. Những người lên lịch càng nhiều
trải rộng trên phần cứng, càng nhiều tài nguyên sẽ có sẵn cho hệ thống thời gian chạy
trong những tình huống như vậy.

LƯU Ý: Nếu một bộ lập lịch không liên kết được, điều này thường sẽ bị bỏ qua một cách âm thầm. Điều này kể từ
không phải lúc nào cũng có thể xác minh số nhận dạng bộ xử lý logic hợp lệ. Nếu một lỗi
được báo cáo, nó sẽ được báo cáo cho error_logger. Nếu bạn muốn xác minh rằng
lịch trình thực sự đã ràng buộc theo yêu cầu, hãy gọi
erlang: system_info (Scheduler_bindings).

+ sbwt không có gì | rất_ ngắn | ngắn | trung bình | dài | rất_ dài:
Đặt ngưỡng chờ bận của bộ lập lịch. Mặc định là trung bình. Ngưỡng xác định cách thức
những người có lịch trình dài nên đợi khi hết việc rồi mới đi ngủ.

LƯU Ý: Cờ này có thể bị xóa hoặc thay đổi bất kỳ lúc nào mà không cần thông báo trước.

+ scl đúng | sai:
Bật hoặc tắt tính năng nén tải của bộ lập lịch. Theo mặc định trình lập lịch trình nén của
tải được kích hoạt. Khi được bật, cân bằng tải sẽ cố gắng phân phối tải
điều này khiến càng nhiều chủ đề của bộ lập lịch được tải đầy đủ càng tốt (tức là không chạy
hết việc). Điều này được thực hiện bằng cách chuyển tải (ví dụ: các quy trình có thể chạy) vào
một bộ lập lịch nhỏ hơn khi bộ lập lịch thường xuyên hết công việc. Khi nào
bị vô hiệu hóa, tần suất mà các bộ lập lịch hết công việc sẽ không được tính đến
tính toán bằng logic cân bằng tải.
+ scl sai tương tự như + phụ đúng với sự khác biệt đó + phụ đúng cũng sẽ
việc sử dụng bộ lập lịch cân bằng giữa các bộ lập lịch.

+ sct Cấu trúc liên kết Cpu:

* = số nguyên (); khi nào 0 =< =< 65535

* = -

* = |

* = , |

* = L

* = T | t

* = C | C

* = P | P

* = n | n

* = |


* Cấu trúc liên kết Cpu = : |

Đặt cấu trúc liên kết CPU do người dùng xác định. Cấu trúc liên kết CPU do người dùng xác định sẽ ghi đè lên bất kỳ
tự động phát hiện cấu trúc liên kết CPU. Cấu trúc liên kết CPU được sử dụng khi ràng buộc
lịch trình đến hợp lý bộ vi xử lý.

Các chữ cái viết hoa biểu thị mã nhận dạng thực và các chữ cái viết thường biểu thị giả mạo
số nhận dạng chỉ được sử dụng để mô tả cấu trúc liên kết. Số nhận dạng được chuyển là có thật
hệ thống thời gian chạy có thể sử dụng số nhận dạng khi cố gắng truy cập
phần cứng và nếu chúng không đúng thì hành vi đó là không xác định. CPU logic giả
số nhận dạng không được chấp nhận vì không có điểm nào trong việc xác định cấu trúc liên kết CPU
không có mã định danh CPU logic thực sự. Số nhận dạng luồng, lõi, bộ xử lý và nút
có thể bị bỏ lại. Nếu bỏ qua, id chuỗi mặc định thành t0, id lõi mặc định là c0,
id bộ xử lý mặc định là p0và id nút sẽ không được xác định. Mỗi lôgic
bộ xử lý phải thuộc về một và chỉ một nút NUMA hoặc không bộ xử lý logic nào phải
thuộc về NUMA nút nào.

Cả tăng và giảm s được cho phép.

NUMA số nhận dạng nút trên toàn hệ thống. Nghĩa là, mỗi nút NUMA trên hệ thống phải
có một định danh duy nhất. Số nhận dạng bộ xử lý cũng có trên phạm vi toàn hệ thống. Cốt lõi
số nhận dạng là bộ xử lý rộng. Số nhận dạng chủ đề là cốt lõi rộng.

Thứ tự của các loại định danh ngụ ý cấu trúc phân cấp của cấu trúc liên kết CPU. Có giá trị
đơn đặt hàng là một trong hai , hoặc là
. Đó là, chủ đề là một phần của
lõi là một phần của bộ xử lý là một phần của nút NUMA hoặc luồng là một phần
của lõi là một phần của nút NUMA là một phần của bộ xử lý. Cấu trúc liên kết cpu
có thể bao gồm cả nút bên ngoài bộ xử lý và nút NUMA bên trong bộ xử lý miễn là
mỗi bộ xử lý logic thuộc về một và chỉ một nút NUMA. Nếu như is
bỏ ra ngoài, vị trí mặc định của nó sẽ là trước . Đó là, mặc định là
các nút NUMA bên ngoài của bộ xử lý.

Nếu một danh sách các số nhận dạng được sử dụng trong một :

* phải là một danh sách các số nhận dạng.

* Ít nhất một loại mã định danh khác ngoài cũng phải có một
danh sách các định danh.

* Tất cả danh sách số nhận dạng phải tạo ra cùng một lượng số nhận dạng.

Một ví dụ đơn giản. Một bộ xử lý lõi tứ có thể được mô tả theo cách này:

% erl + sct L0-3c0-3
1> erlang: system_info (cpu_topology).
[{bộ xử lý, [{core, {logic, 0}},
{cốt lõi, {logic, 1}},
{cốt lõi, {logic, 2}},
{cốt lõi, {logic, 3}}]}]

Một ví dụ phức tạp hơn một chút. Hai bộ vi xử lý lõi tứ. Mỗi bộ xử lý trong nó
nút NUMA riêng. Thứ tự của các bộ xử lý hợp lý là một chút kỳ lạ. Điều này theo thứ tự
để cung cấp một ví dụ tốt hơn về danh sách số nhận dạng:

% erl +sct L0-1,3-2c0-3p0N0:L7,4,6-5c0-3p1N1
1> erlang: system_info (cpu_topology).
[{nút, [{bộ xử lý, [{lõi, {logic, 0}},
{cốt lõi, {logic, 1}},
{cốt lõi, {logic, 3}},
{cốt lõi, {logic, 2}}]}]},
{nút, [{bộ xử lý, [{lõi, {logic, 7}},
{cốt lõi, {logic, 4}},
{cốt lõi, {logic, 6}},
{cốt lõi, {logic, 5}}]}]}]

Miễn là các số nhận dạng thực là chính xác, thì có thể chuyển một cấu trúc liên kết CPU
không phải là mô tả chính xác về cấu trúc liên kết của CPU. Khi sử dụng cẩn thận, điều này thực sự có thể
rất hữu ích. Điều này nhằm đánh lừa trình giả lập ràng buộc các bộ lập lịch của nó với tư cách là bạn
muốn. Ví dụ: nếu bạn muốn chạy nhiều hệ thống thời gian chạy Erlang trên cùng một
máy, bạn muốn giảm số lượng bộ lập lịch được sử dụng và thao tác với CPU
cấu trúc liên kết để chúng liên kết với các CPU logic khác nhau. Một ví dụ, với hai Erlang
hệ thống thời gian chạy trên máy lõi tứ:

% erl + sct L0-3c0-3 + sbt db + S3: 2 -detached -noinput -noshell -sname one
% erl + sct L3-0c0-3 + sbt db + S3: 2 -detached -noinput -noshell -sname hai

Trong ví dụ này, mỗi hệ thống thời gian chạy có hai bộ lập lịch trực tuyến và tất cả
bộ lập lịch trực tuyến sẽ chạy trên các lõi khác nhau. Nếu chúng tôi đổi sang một công cụ lập lịch trực tuyến
trên một hệ thống thời gian chạy và ba bộ lập lịch trực tuyến trên hệ thống khác, tất cả bộ lên lịch
trực tuyến sẽ vẫn chạy trên các lõi khác nhau.

Lưu ý rằng cấu trúc liên kết CPU giả mạo không phản ánh cấu trúc liên kết CPU thực trông như thế nào
như có thể làm giảm hiệu suất của hệ thống thời gian chạy.

Để biết thêm thông tin, xem erlang: system_info (cpu_topology).

+ secio đúng | sai:
Bật hoặc tắt lập lịch I / O kiểm tra háo hức. Giá trị mặc định hiện tại là đúng. Các
mặc định đã được thay đổi từ sai đến đúng kể từ phiên bản erts 7.0. Các hành vi trước đây
lá cờ này được giới thiệu tương ứng với + secio sai.

Cờ hiệu ứng khi bộ lập lịch sẽ kiểm tra các hoạt động I / O có thể thực thi,
và khi nào các hoạt động I / O như vậy sẽ thực thi. Như tên của tham số ngụ ý,
những người lên lịch sẽ háo hức kiểm tra I / O hơn khi đúng được thông qua. Tuy nhiên, điều này
cũng ngụ ý rằng việc thực hiện hoạt động I / O còn tồn đọng sẽ không được ưu tiên
cùng mức độ như khi sai được thông qua.

erlang: system_info (háo hức_check_io) trả về giá trị của tham số này được sử dụng khi
khởi động máy ảo.

+ sfwi Khoảng thời gian:
Đặt khoảng thời gian đánh thức bắt buộc của bộ lập lịch. Tất cả các hàng đợi chạy sẽ được quét từng Khoảng thời gian
mili giây. Trong khi có bộ lập lịch ngủ trong hệ thống, một bộ lập lịch sẽ
được đánh thức cho mỗi hàng đợi chạy không trống được tìm thấy. Một Khoảng thời gian không vô hiệu hóa điều này
, cũng là tính năng mặc định.

Tính năng này đã được giới thiệu như một giải pháp tạm thời cho các
mã và mã gốc không tăng giảm đúng cách trong OTP. Khi những lỗi này
đã được sửa chữa + sfwi cờ sẽ bị xóa.

+ stbt Loại ràng buộc:
Cố gắng đặt loại ràng buộc của bộ lập lịch. Giống như + sbt gắn cờ ngoại trừ cách
một số lỗi được xử lý. Để biết thêm thông tin, hãy xem tài liệu của + sbt
cờ.

+ phụ đúng | sai:
Bật hoặc tắt scheduler sử dụng cân bằng tải. Theo bộ lập lịch mặc định
cân bằng sử dụng bị vô hiệu hóa và thay vào đó, bộ lập lịch nén tải là
được kích hoạt sẽ cố gắng phân phối tải gây ra nhiều bộ lập lịch
các luồng càng tốt để được tải đầy đủ (tức là không hết công việc). Khi người lên lịch
cân bằng sử dụng được bật, thay vào đó, hệ thống sẽ cố gắng cân bằng bộ lập lịch
sử dụng giữa các bộ lập lịch. Đó là, cố gắng sử dụng công cụ lập lịch bình đẳng trên
tất cả các lịch trình.
+ phụ đúng chỉ được hỗ trợ trên các hệ thống mà hệ thống thời gian chạy phát hiện và sử dụng
tăng xung nhịp độ phân giải cao đơn điệu. Trên các hệ thống khác, hệ thống thời gian chạy
sẽ không bắt đầu.
+ phụ đúng ngụ ý + scl sai. Sự khác biệt giữa + phụ đúng+ scl sai is
việc này + scl sai sẽ không cố gắng cân bằng việc sử dụng bộ lập lịch.

+ swct very_eager | háo hức | trung bình | lười biếng | very_lazy:
Đặt ngưỡng dọn dẹp đánh thức của bộ lập lịch. Mặc định là trung bình. Cờ này kiểm soát cách thức
những người lên lịch háo hức nên yêu cầu đánh thức do các hoạt động dọn dẹp nhất định.
Khi sử dụng cài đặt lười biếng, các hoạt động dọn dẹp nổi bật hơn có thể được hoàn tác
trong khi một bộ lập lịch đang chạy không tải. Khi một cài đặt háo hức được sử dụng, những người lập lịch sẽ nhiều hơn
thường xuyên bị đánh thức, có khả năng tăng hiệu suất sử dụng CPU.

LƯU Ý: Cờ này có thể bị xóa hoặc thay đổi bất kỳ lúc nào mà không cần thông báo trước.

+ sws mặc định | kế thừa:
Đặt chiến lược đánh thức bộ lập lịch. Chiến lược mặc định đã thay đổi trong erts-5.10 / OTP-R16A. Điều này
chiến lược trước đây được gọi là đề nghị trong OTP-R15. Các di sản chiến lược đã được sử dụng
như mặc định từ R13 trở lên và bao gồm cả R15.

LƯU Ý: Cờ này có thể bị xóa hoặc thay đổi bất kỳ lúc nào mà không cần thông báo trước.

+ swt very_low | low | trung bình | high | very_high:
Đặt ngưỡng đánh thức của bộ lập lịch. Mặc định là trung bình. Ngưỡng xác định thời điểm
đánh thức lên lịch đi ngủ khi có nhiều việc hơn có thể giải quyết bằng cách hiện đang thức
lịch trình tồn tại. Ngưỡng thấp sẽ khiến thức dậy sớm hơn và ngưỡng cao
sẽ gây ra những lần thức giấc sau này. Thức dậy sớm sẽ phân phối công việc trên nhiều
bộ lập lịch nhanh hơn, nhưng công việc sẽ dễ dàng bị trả lại giữa các bộ lên lịch.

LƯU Ý: Cờ này có thể bị xóa hoặc thay đổi bất kỳ lúc nào mà không cần thông báo trước.

+ spp bool:
Đặt gợi ý bộ lập lịch mặc định cho cổng song song. Nếu được đặt thành đúng, VM sẽ
lập lịch các tác vụ cổng khi làm như vậy sẽ cải thiện tính song song trong hệ thống. Nếu được đặt thành
sai, VM sẽ cố gắng thực hiện các tác vụ cổng ngay lập tức, cải thiện độ trễ ở
chi phí song song. Nếu cờ này chưa được thông qua, gợi ý về bộ lập lịch mặc định
đối với cổng song song hiện là sai. Giá trị mặc định được sử dụng có thể được kiểm tra trong
thời gian chạy bằng cách gọi erlang: system_info (port_parallelism). Mặc định có thể là
ghi đè lên việc tạo cổng bằng cách chuyển song song tùy chọn để open_port / 2.

+ sss kích thước:
Kích thước ngăn xếp được đề xuất, tính bằng kilowords, cho các luồng của bộ lập lịch. Phạm vi hợp lệ là 4-8192
kilowords. Kích thước ngăn xếp mặc định phụ thuộc vào hệ điều hành.

+t kích thước:
Đặt số lượng nguyên tử tối đa mà VM có thể xử lý. Mặc định là 1048576.

+T Cấp:
Bật thời gian đã sửa đổi và đặt mức thời gian đã sửa đổi. Phạm vi hợp lệ hiện tại là
0-9. Thời gian của hệ thống thời gian chạy sẽ thay đổi. Mức cao thường có nghĩa là
thay đổi lớn hơn mức thấp. Thay đổi thời gian có thể rất hữu ích cho việc tìm kiếm
thời gian các lỗi liên quan.

Hiện tại, thời gian được sửa đổi ảnh hưởng đến những điều sau:

Quy trình xét duyệt sinh sản:
Một quá trình đang gọi sinh sản, liên kết sinh sản, spawn_monitor, hoặc là sinh sản_opt sẽ được lên lịch
ra ngay sau khi hoàn thành cuộc gọi. Khi các mức thời gian sửa đổi cao hơn là
được sử dụng, người gọi cũng sẽ ngủ một lúc sau khi được lên lịch ra ngoài.

Bối cảnh giảm:
Số lượng cắt giảm mà một quy trình được phép sử dụng trước khi được lên lịch là
tăng hoặc giảm.

Đầu vào giảm:
Số lượng giảm được thực hiện trước khi kiểm tra I / O được tăng hoặc giảm.

LƯU Ý: Hiệu suất sẽ bị ảnh hưởng khi thời gian sửa đổi được bật. Lá cờ này là có thể
nhằm mục đích thử nghiệm và gỡ lỗi. Cũng lưu ý rằng trở lạiTrở về từ theo dõi
tin nhắn sẽ bị mất khi truy tìm trên BIFs sinh ra. Cờ này có thể bị xóa hoặc
thay đổi bất cứ lúc nào mà không cần thông báo trước.

+V:
Làm cho trình giả lập in ra số phiên bản của nó.

+v:
Dài dòng.

+W w | i | e:
Đặt ánh xạ các thông báo cảnh báo cho error_logger. Tin nhắn được gửi đến lỗi
trình ghi nhật ký sử dụng một trong các quy trình cảnh báo có thể được ánh xạ tới lỗi (+W e),
cảnh báo (+W w), hoặc báo cáo thông tin (+W i). Mặc định là cảnh báo. Ánh xạ hiện tại
có thể được lấy lại bằng cách sử dụng error_logger: warning_map / 0. Thấy error_logger(3erl) để biết thêm
thông tin.

+ zFlag Giá trị:
Cờ linh tinh.

+ zdbbl kích thước:
Đặt giới hạn bận bộ đệm phân phối (dist_buf_busy_limit) tính bằng kilobyte. Có giá trị
phạm vi là 1-2097151. Mặc định là 1024.

Giới hạn bộ đệm lớn hơn sẽ cho phép các quy trình đệm nhiều thư gửi đi hơn
phân bổ. Khi đạt đến giới hạn bộ đệm, các quá trình gửi sẽ
bị treo cho đến khi kích thước bộ đệm bị thu hẹp. Giới hạn bộ đệm là mỗi lần phân phối
kênh. Giới hạn cao hơn sẽ cho độ trễ thấp hơn và thông lượng cao hơn với chi phí
sử dụng bộ nhớ cao hơn.

+ zdntgc thời gian:
Đặt thời gian thu gom rác của bảng nút bị trì hoãn (delay_node_table_gc) trong
giây. Giá trị hợp lệ là vô cực hoặc một số nguyên trong phạm vi [0-100000000].
Mặc định là 60.

Các mục nhập bảng nút không được tham chiếu sẽ tồn tại trong bảng ít nhất
khoảng thời gian mà tham số này xác định. Việc kéo dài ngăn cản việc lặp lại
việc xóa và chèn trong bảng không xảy ra.

MÔI TRƯỜNG BIẾN


ERL_CRASH_DUMP:
Nếu trình giả lập cần viết một kết xuất sự cố, giá trị của biến này sẽ là
tên tệp của tệp kết xuất sự cố. Nếu biến không được đặt, tên của sự cố
tệp kết xuất sẽ là erl_crash.dump trong thư mục hiện tại.

ERL_CRASH_DUMP_NICE:
Unix hệ thống: Nếu trình giả lập cần viết kết xuất sự cố, nó sẽ sử dụng giá trị của
biến này để đặt giá trị tốt cho quy trình, do đó giảm mức độ ưu tiên của nó. Các
phạm vi cho phép là 1 đến 39 (các giá trị cao hơn sẽ được thay thế bằng 39). Cao nhất
giá trị, 39, sẽ cung cấp cho quá trình mức độ ưu tiên thấp nhất.

ERL_CRASH_DUMP_SECONDS:
Unix hệ thống: Biến này cung cấp số giây mà trình giả lập sẽ
được phép chi tiêu để viết một bãi chứa sự cố. Khi số giây nhất định đã trôi qua,
trình giả lập sẽ được kết thúc bằng tín hiệu SIGALRM.

Nếu biến môi trường là không đặt hoặc nó được đặt thành XNUMX giây,
ERL_CRASH_DUMP_SECONDS = 0, hệ thống thời gian chạy thậm chí sẽ không cố gắng ghi lỗi
tập tin dump. Nó sẽ chỉ chấm dứt.

Nếu biến môi trường được đặt thành giá trị âm, ví dụ: ERL_CRASH_DUMP_SECONDS = -1,
hệ thống thời gian chạy sẽ chờ vô thời hạn để ghi tệp kết xuất sự cố.

Biến môi trường này được sử dụng để kết hợp với tim if tim đang chạy:

ERL_CRASH_DUMP_SECONDS = 0:
Ngăn chặn hoàn toàn việc ghi tệp kết xuất sự cố, do đó khởi động lại hệ thống thời gian chạy
ngay lập tức. Điều này cũng giống như việc không đặt biến môi trường.

ERL_CRASH_DUMP_SECONDS = -1:
Đặt biến môi trường thành một giá trị âm sẽ làm cho
hệ thống thời gian chạy để đợi cho đến khi tệp kết xuất sự cố được ghi hoàn chỉnh.

ERL_CRASH_DUMP_SECONDS = S:
Sẽ đợi S giây để hoàn thành tệp kết xuất sự cố và sau đó chấm dứt
hệ thống thời gian chạy.

ERL_AFLAGS:
Nội dung của biến môi trường này sẽ được thêm vào đầu lệnh
dòng cho sai lầm.

Sản phẩm -thêm cờ được đối xử đặc biệt. Phạm vi của nó kết thúc ở cuối môi trường
nội dung biến đổi. Lập luận sau một -thêm cờ được di chuyển trên dòng lệnh
vào -thêm , tức là phần cuối của dòng lệnh theo sau một -thêm
cờ.

ERL_ZFLAGSERL_FLAGS:
Nội dung của các biến môi trường này sẽ được thêm vào cuối lệnh
dòng cho sai lầm.

Sản phẩm -thêm cờ được đối xử đặc biệt. Phạm vi của nó kết thúc ở cuối môi trường
nội dung biến đổi. Lập luận sau một -thêm cờ được di chuyển trên dòng lệnh
vào -thêm , tức là phần cuối của dòng lệnh theo sau một -thêm
cờ.

ERL_LIBS:
Biến môi trường này chứa một danh sách các thư mục thư viện bổ sung mà
máy chủ mã sẽ tìm kiếm các ứng dụng và thêm vào đường dẫn mã. Nhìn thấy (3erl).

ERL_EPMD_ADDRESS:
Biến môi trường này có thể được đặt thành danh sách địa chỉ IP được phân tách bằng dấu phẩy, trong
trường hợp nào epd daemon sẽ chỉ lắng nghe trên (các) địa chỉ được chỉ định và trên
địa chỉ loopback (được thêm ngầm vào danh sách nếu nó chưa được chỉ định).

ERL_EPMD_PORT:
Biến môi trường này có thể chứa số cổng để sử dụng khi giao tiếp với
epd. Cổng mặc định sẽ hoạt động tốt trong hầu hết các trường hợp. Một cổng khác có thể được chỉ định
để cho phép các nút của các cụm độc lập cùng tồn tại trên cùng một máy chủ. Tất cả các nút trong một
cụm phải sử dụng cùng một số cổng epmd.

CẤU HÌNH


Hệ thống Erlang / OTP tiêu chuẩn có thể được cấu hình lại để thay đổi hành vi mặc định trên
khởi động.

Sản phẩm .erlang Khởi động File:
Khi Erlang / OTP được khởi động, hệ thống sẽ tìm kiếm một tệp có tên .erlang trong
thư mục nơi Erlang / OTP được bắt đầu. Nếu không tìm thấy, thư mục chính của người dùng là
đã tìm kiếm tệp .erlang.

Nếu một tệp .erlang được tìm thấy, nó được cho là chứa các biểu thức Erlang hợp lệ. Này
các biểu thức được đánh giá như thể chúng được nhập vào shell.

Tệp .erlang điển hình chứa một tập hợp các đường dẫn tìm kiếm, ví dụ:

io: format ("thực thi hồ sơ người dùng trong HOME / .erlang \ n", []).
mã: add_path ("/ home / calvin / test / ebin").
mã: add_path ("/ home / hobbes / bigappl-1.2 / ebin").
io: format (". erlang rc xong \ n", []).

người dùng_mặc định shell_default:
Các hàm trong shell không có tiền tố tên mô-đun được giả định là
các đối tượng chức năng (Funs), các chức năng cài sẵn (BIF) hoặc thuộc về mô-đun
user_default hoặc shell_default.

Để bao gồm các lệnh shell riêng, hãy xác định chúng trong user_default của mô-đun và thêm
đối số sau làm dòng đầu tiên trong tệp .erlang.

mã: load_abs (".... / user_default").

lỗi:
Nếu nội dung của .erlang bị thay đổi và phiên bản riêng tư của user_default là
xác định, có thể tùy chỉnh môi trường Erlang / OTP. Những thay đổi mạnh mẽ hơn
có thể được thực hiện bằng cách cung cấp các đối số dòng lệnh trong erl tập lệnh khởi động. Tham khảo
sai lầm(1) trong đó(3erl) của chúng tôi để biết thêm thông tin.

Sử dụng erl trực tuyến bằng các dịch vụ onworks.net


Máy chủ & Máy trạm miễn phí

Tải xuống ứng dụng Windows & Linux

Lệnh Linux

Ad