S556 · R1 modem: SMS PDU kodlama/çözme modeli
S556 kaynak/host model kapısı PASS'tir: 3GPP TS 23.040/23.038 SMS PDU modu — SMS-SUBMIT kodlama, SMS-SUBMIT/SMS-DELIVER TPDU çözme, SMSC ve TP-DA/TP-OA yarı-oktet BCD adresleri (TOA 0x91/0x81), GSM 7-bit varsayılan alfabe septet paketleme/açma (temel uzantı tablosu dahil), Türkçe karakterler için UCS-2 (DCS 0x08) big-endian kodlama, TP-UDL, 8-bit birleştirme UDH (IEI 0x00 ref/total/seq), TP-SCTS zaman damgası çözme ve 160 septet / 70 UCS-2 sınırları saf bir model olarak modellendi. Klasik 'hellohello' SMS-SUBMIT ve 'How are you?' SMS-DELIVER hex vektörleri byte-exact sabitlendi; bozuk hex, kesik/fazla oktet, desteklenmeyen TOA/DCS ve geçersiz BCD/zaman damgası fail-closed reddedilir. Focused 19/19 PASS'tir. S540 ve S543 fiziksel RED immutable kalır; hiçbir modem, SIM, UART veya board yoktur, physical observation=0 ve RUNBOOK_EXECUTED_IN_S556=NO'dur. S557 paket veri PDP context / PPP çerçeve modelidir.
Doğrulanan kanıt
- S556 kaynak modülü kernel ve simulation crate'lerinde kayıtlıdır; hiçbir boot, IRQ, scheduler veya sürücü yoluna bağlanmamıştır ve tek çağıranı focused testtir.
- Model SMSC adresini (uzunluk oktet sayar, yokken 00) ve TP-DA/TP-OA adresini (uzunluk rakam sayar) swapped yarı-oktet BCD ve tek rakam sayısı için F dolgusu ile kodlar; TOA yalnız 0x91 (uluslararası, + öneki) ve 0x81 (bilinmeyen) kabul edilir, rakam sayısı 1..=20 ile sınırlıdır.
- GSM 7-bit varsayılan alfabe 128 girişli temel tablo ve ESC 0x1B üzerinden ulaşılan temel uzantı tablosu (^ { } \ [ ~ ] | €) ile modellenir; septetler LSB-first paketlenir ve UDH sonrası dolgu bitleri açıkça hesaplanır.
- UCS-2 (DCS 0x08) big-endian kodlama Türkçe Ş/ğ/ı/İ karakterlerini taşır; BMP dışı kod noktaları ve tek oktet sayısı reddedilir, select_data_coding tüm karakterler temsil edilebiliyorsa GSM 7-bit aksi halde UCS-2 seçer.
- SMS-SUBMIT ilk okteti MTI=01, göreli geçerlilik varsa VPF=10 ve birleştirme başlığı varsa UDHI=0x40 taşır; TP-MR, TP-DA, TP-PID 00, TP-DCS, TP-VP, TP-UDL ve TP-UD sırası sabittir.
- SMS-DELIVER çözümü TP-SCTS'yi swapped BCD ve yedinci oktetin 3. bitindeki çeyrek saat işaretiyle çözer; 99309251619580 vektörü 99-03-29 15:16:59 +8 çeyrek saat verir.
- 8-bit birleştirme UDH'si (05 00 03 ref total seq) 48 bit kapladığı için bir dolgu biti gerektirir; 'hellohello' metni bu durumda D06536FB8D2EB3D96F, başlıksız durumda E8329BFD4697D9EC37 olarak paketlenir ve her ikisi bağımsız bit-akışı hesabıyla doğrulanmıştır.
- Uzunluk sınırları başlıksız 160 septet / 70 UCS-2 karakter, birleştirme başlığıyla 153 septet / 67 karakterdir; 161, 71, 154 ve 68 değerleri TextTooLong ile reddedilir.
- Klasik SMS-SUBMIT vektörü 0011000B916407281553F80000AA0AE8329BFD4697D9EC37 encoder çıktısıyla byte-exact eşleşir; klasik SMS-DELIVER vektörü 07911326040000F0040B911346610089F6... SMSC +31624000000, gönderen +31641600986, 02-08-26 19:37:41 ve 'How are you?' metnine çözülür.
- Yayın servisi isteği kodlar, üretilen PDU'yu geri çözer ve exact round-trip ister; receipt PDU'nun FNV-1a 64 özetini, oktet sayılarını, UDL'yi, kodlamayı, birleştirmeyi, TOA ve rakam sayılarını taşır. Exact tekrar Retained döner, yayın sonrası farklı istek PublishedStateDrift ile fail-closed reddedilir.
- 25 hata kodu sıfırdan farklı ve benzersizdir: bozuk hex, adres, TOA, dolgu, alfabe dışı karakter, BMP dışı karakter, uzunluk, birleştirme, DCS, mesaj tipi, geçerlilik biçimi, kesik/fazla oktet, UDH, IEI, UDL, BCD, zaman damgası, septet/escape, UCS-2 uzunluğu, round-trip ve yayın sapması.
- Focused target 1 grup / 19 passed / 0 failed / 0 ignored / 0 filtered verdi.
- Implementation 35489 B / 850328070541145737c960d2bc131b6fd01e62d52f3c039e7d84fb7f7fed5059; focused test 25274 B / 2cd8662980330aca5366d87d58b218c5943bcca90cfd92326067f85a95f14394 SHA-256'dır.
- Proof 5079 B'dir.
- S540 ve S543 immutable raw'ları ve fiziksel RED kararları byte-exact korunur; automatic promotion=false ve rerun=false'dur.
- S556 sırasında modem, SIM, AT kanalı, UART open/capture, SD write, power transition, panel/board gözlemi veya yeni immutable raw üretimi yapılmadı.
- RUNBOOK_EXECUTED_IN_S556=NO; supported-profile runtime observations=0, physical observations=0, hardware present=false, Boot-to-UI physically observed=false ve R1 acceptance=false'dur.
- S557 paket veri PDP context aktivasyonu ve PPP çerçeve kodlama/çözme modelidir; yine yalnız kaynak/host kapısıdır ve modem veya board iddiası taşımaz.
Sınır / bekleyen kanıt
- S556 yalnız kaynak/host modelidir; hiçbir donanım/panel/modem/board gözlemi yoktur ve gerçek bir modemin AT+CMGS/AT+CMGR PDU alışverişi gözlenmemiştir.
- Model yalnız TOA 0x91/0x81, DCS 0x00/0x08, göreli geçerlilik biçimi ve 8-bit birleştirme IEI 0x00 kapsar; alfanümerik adresler, 8-bit veri, mutlak/genişletilmiş geçerlilik ve diğer IE'ler fail-closed reddedilir.
- S540 ve S543 fiziksel RED immutable kalır; Boot-to-UI ve R1 acceptance false'tur.
- Modül üretim yoluna bağlanmamıştır; production callsite wiring ayrı bir kapı ister.
- S557 paket veri PDP context / PPP çerçeve modeli tamamlanmadan modem aşaması kapanmaz; hiçbir kapı fiziksel koşu yetkisi vermez.
Terminal komutları ve gerçek yanıtlar
S556 kaynak/host model PASS'tir; modem, SIM veya fiziksel PASS değildir. S540 ve S543 RED raw ve kararları değişmez.
$ CARGO_INCREMENTAL=0 cargo test -p aselsan_microkernel_simulation --test g8l_target_dispatch_scheduler_owner_scheduler_mutation_production_migration_lifecycle_s556_r1_sms_pdu_encode_decode_model -- --test-threads=1test result: ok. 19 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
S556 focused=1 group / 19 passed / 0 failed
hardware=none physical=0 runbook=NO