Публикации по теме 'system-programming'
Как происходит выравнивание структуры данных и с чем его едят?
В некоторых языках программирования мы можем использовать некоторую магию, связанную с выделением памяти для структуры данных. Я приведу вам примеры из языка Go, поскольку его легко читать и понимать.
package main
import (
"fmt"
"unsafe"
)
type Foo struct {
field1 bool // 1 byte
field2 int32 // 4 byte
}
func main() {
a := Foo{}
fmt.Println(unsafe.Sizeof(a)) // should be 1 + 4 = 5
}
В этом фрагменте кода мы
Создал тип пользователя Foo. Он..
Моделирование уровня транзакций с помощью SystemC
Компонентное моделирование с абстракцией
Моделирование на уровне транзакций (TLM) отделяет связь от вычислений в системе. С точки зрения системной инженерии компонент можно смоделировать как модуль SystemC с набором параллельных процессов, выполняющих необходимые вычисления для представления своего поведения. Модули взаимодействуют друг с другом в виде…
Изучаем Rust 3: Структуры
Привет, Rustations, спасибо, что вернулись за частью 3! Rust — прекрасный язык системного программирования, который, как известно, «труден для изучения». В этой серии мы разобьем его концепции на простые для понимания части с ключевыми выводами. Надежда этой серии состоит в том, чтобы заинтересовать больше людей ржавчиной и увидеть, насколько она удивительна на самом деле. В этой статье мы поговорим о структурах в rust.
Структуры — это способ определения пользовательских типов..
Смарт-контракт с Rust
Пока мы концентрируемся на написании параллельных серверных систем на Rust , вы также будете взаимодействовать с нашими смарт-контрактами , написанными на Solidity, и улучшите свое понимание механизмов аукционов и протоколов DeFi.
Я могу объяснить это более подробно.
Параллельные серверные системы — это системы, которые могут обрабатывать несколько запросов одновременно. Они часто используются в веб-приложениях и других системах, которым необходимо обрабатывать большой объем..
Краткое введение в SystemC-AMS
Моделирование аналоговых и смешанных сигналов
Аналоговые системы задаются дифференциально-алгебраическими уравнениями. Их можно разделить на консервативные и неконсервативные системы. В консервативных системах сигналы представляют собой физические величины, связанные с сквозным значением (например, напряжением) и сквозным значением (например, током). Эти сигналы являются двунаправленными. Сигналы в неконсервативном…
Введение в оператор космического корабля C++20
В C++20 появился оператор трехстороннего сравнения, также известный как «оператор космического корабля» из-за его внешнего вида: <=> . Цель — упростить процесс сравнения объектов.
Основы
Ниже приведен простой пример использования этого нового оператора космического корабля:
#include <compare>
int main() {
int a = 1;
int b = 2;
auto result = a <=> b;
if (result < 0) {
std::cout << "a is less than b" << std::endl;
} else..
Изучаем Rust 2: векторы
Привет, Rustations, спасибо, что вернулись, чтобы прочитать вторую часть! Rust — прекрасный язык системного программирования, который, как известно, «труден для изучения». В этой серии мы разобьем его концепции на простые для понимания части с ключевыми выводами. Надежда этой серии состоит в том, чтобы заинтересовать больше людей ржавчиной и увидеть, насколько она удивительна на самом деле. В этой статье мы поговорим о векторах.
Векторы в Rust — это динамический массив, который..