OS can be used by 3 type of computers:
- clients: Users Manager, PXE client, UI,
- routers: IPv6 Sub Networking router, PXE server, Each build has specific features.
Each user must have valid public key. New CPU structures have a unique immutable key that we use to improve security.
Each services(application) must have validated domain space e.g. my.sabz.city
Authorization can set to specific resource on specific domain. It looks like FreeBSD JAIL or Linux CGroups or Linux LXC or Docker that implement Operating System Level Virtualization Services can get minimum and maximum resource for accounting purpose e.g. RAM-min:1Gb, RAM-max:2Gb
Data Packet Routing
- OS don't change or cut any data, just routing!
Nature of USB protocol have enough data to route data packet easily and secure between services and devises.
- OS support multi IPv6 on multi NIC (Network interface controller). OS route ip packet between services(app) and NICs.
- OS use resource authorization mechanism to schedule packet in each NIC by service registration data.
- Each IP has public key that made by ::/64 router and send to owner of IP.
- Each IP packet encrypt by paired EncryptionKey before send over MAC link. Due nature of MAC frame, MAC header can't be encrypted.
- OS doesn't support fragmentation in any layer. App must respect MTU value from related method and just send max packet size otherwise packet will be drop at upper layer.
- Just support IPv6! due IPv4 must deprecated along time ago! So every where you see IP it means IPv6!
- Each service(app) has unique IP, So OS don't bother to do upper layer like transport layer! We strongly suggest don't use old ipv4 idea protocols like udp or tcp!
- Developers can use auto-generation mechanism to decrease developing process overhead. We introduce ChaparKhane.
- OS doesn't have any local IP! Detect device MAC after ARP lookup and Maybe packet route internally! So we don't have something like localhost or 127.0.0.1 due different in architecture.
We suggest do firewall in ::/64 subnet router network level. each IP can send block signal to router. With this approach we can have both physical and upper layer security. If abuser send data to inner network services, It will easy to locate physically and remove it from router.
We need to store and retrieve data in multi model! So OS don't have any schema forces in storage engine layer like FileSystems or RDBMS for security and performance reason. Services(apps) can connect to device (Raw data) without any additional layer.
- It is very easy to have distributed storage with PersiaDB
- Improve security because naked device (without FileSystems) can't read by any OS.
- Improve performance because no additional layer.
- Have distributed storage engine (file system)! because all device storage capabilities be as one storage capabilities in top layer of database.
How to install and use
Not implement yet to install or use!
Read more about kernels concept
This OS is under development and not ready to use in real production. It can have breakable changes until version 1 release. But we are glad to hear your experience or idea about this concept.