From
Nikolaj Amosov
→
To
All
2 July 2003
Greetings, All!
What kind of OS is this - QNX?
[REAL ZX]
From
Kirill Frolov
→
To
Nikolaj Amosov
5 July 2003
Press RESET immediately, Nikolaj Amosov!
On Fri, 04 Jul 03 21:00:10 +0400, Nikolaj Amosov wrote:
NA>>> What kind of OS is this - QNX?
KF>> www.ya.ru -> QNX.
NA> Well, I don’t have access to the Internet and never will.
I also remembered the URL: www.swd.ru
QNX Philosophy
This chapter contains the following sections:
+ What is QNX?
+ QNX microkernel architecture
+ Interprocess communication
+ QNX network
What is QNX?
The main function of the operating system is resource management
computer. All actions in the system - execution planning
application programs, writing files to disk, sending data via
network, etc. - must function together so seamlessly and transparently
oh, how possible.
Some environments require more stringent resource management and
execution planning than others. Real-time applications
for example, depend on the operating system's processing of many
events within specified time limits. What m
The faster the operating system responds, the larger the application
real time has the ability to maneuver in critical
situations.
The QNX operating system is ideal for real-world applicationstime. It provides multitasking, priority
preemptive scheduling and fast context switching are all
necessary components of a real-time system.
QNX is also remarkably flexible. Developers can easily customize
operating system to meet the needs
your applications. QNX allows you to configure the system so that
use only the resources necessary for work, from "skel
this" kernel configuration with several small modules up to
deployed network system adapted to serve
hundreds of users.
QNX owes its unique degree of efficiency, modularity and
simplicity to two fundamental principles:
microkernel architecture;
interprocess communication using messages.
QNX microkernel architecture
QNX consists of a small kernel responsible for a group
interacting processes. As shown in the following illustrations,
its structure resembles a "team" rather than a hierarchy, since
several players of equal rank interact with each other and with
"protector" - the core.
fig: ./images/modules.gif
The QNX microkernel that coordinates system managers.
Microkernel
The kernel is the basis of any operating system. On some systems the "kernel"includes so many features that it is a complete operating system!
But the QNX microkernel is really a kernel. Firstly, as a core
real-time operating system, the QNX microkernel is very small.
Secondly, it provides only two necessary functions:
Messaging
(message passing) - the microkernel processes the flow of all messages
all processes in the entire system
Planning
(scheduling) - the scheduler is part of the microkernel and is called
whenever the state of a process changes as a result of
messages or interruptions
Unlike processes, execution of the microkernel itself is never
planned. Entry into the microkernel is only a direct result of calls to it
either a process or a hardware interrupt.
System processes
All QNX services other than those provided by the microkernel are provided by
standard QNX processes. A typical QNX configuration has the following
system processes:
Process Manager (Proc)
File System Manager (Fsys)
Device Manager (Dev)
Network Manager (Net)
System processes and user processes
System processes are virtually no different from any user process
programs - they do not have any inaccessible to user processes
private or hidden interfaces.It is this architecture that gives QNX unprecedented extensibility.
Since most operating system services are provided by standard
QNX processes, increasing the operating system is very simple: you just
add new programs that provide new services!
In fact, the boundary between the operating system and the application may
be very blurry. The only real difference between the system
services and applications - that these services allocate resources for
clients.
Let's assume you wrote a database server. How is this process
should be classified?
Just like the file system allows requests (in QNX - messages) to
open files and reads/writes data, the database server also works
data. They are very similar (despite the fact that requests to the database server
data may be more complex) provided by the sets
primitives (message-based), which in turn provide
access to the resource. These are independent processes that can be
written by the end user and run as needed.
The database server could be considered a system process under some circumstances
settings and application - for others. It really doesn't matter
meanings! The important thing is that QNX allows you to implement such processes without
modifications of standard elements of the operating system.
Device DriversDevice drivers are processes that rid the operating system
from having to deal with all the details required for
support for certain hardware.
Since drivers run as standard processes, adding
the new driver for QNX does not affect any other part of the operating system
systems. The only change the QNX environment needs is to start
new driver.
Once initialization is complete, drivers can:
disappear as standard processes, becoming extensions of the system
the process with which they are associated;
maintain individuality as standard processes.
Interprocess communication
When multiple processes are running simultaneously, as in typical
multitasking environments in real time, operating system
must provide mechanisms for processes to communicate with each other.
Inter-process communication (IPC) is key to application design
as a set of interacting processes, where each process performs
its clearly defined task.
QNX provides a simple but powerful set of interprocess
interactions that greatly simplify the work of creating applications,
consisting of interacting processes.
QNX as a message-passing operating system
QNX was the first commercial operating system of its kind,which used message passing as a fundamental means
interprocess communication. QNX owes much of its power to
simplicity and elegance of complete integration of the transfer method
messages throughout the system.
A message in QNX is a packet of bytes sent from one process to
to another. QNX does not attach any importance to the message content -
the data in the message is meaningful only to the sender of the message and
for its recipient.
Message passing allows processes to do more than just pass data
each other, but also provides a means of synchronizing execution
several processes. When processes send, receive, and respond to
messages, they are subject to various "state changes" that
influence when, and for how long, they can be performed. Knowing them
states and priorities, the microkernel can schedule all processes
as efficiently as possible using the available
CPU resources a.
Real-time applications and other critical applications in general
require a reliable form of communication between processes, because processes
that make up such applications are strictly interrelated.
QNX's message passing provides orderliness and
reliability.
QNX networkIn its simplest form, a local area network provides a mechanism for
sharing files and peripherals among multiple
connected computers. QNX goes far beyond this simple
concepts and integrates the network into a single homogeneous set of resources.
Any process on any machine on the network can directly
use any resource on any other machine. From the point of view
applications there is no difference between local or remote
resource - access to them is provided by ordinary means. If only
this was not the case, the program would need special code to be
capable of reporting whether a file or device type resource is located on
local computer or on some other network node!
Users can access files anywhere on the network, use
any peripheral devices and run applications on any
machine on the network (if they have the appropriate permissions). Processes by
entire network can communicate in the same way as the processes
running on the same machine. Ubiquitous messaging
QNX enables mobile networking.
Single computer model
QNX is designed as a network operating system. QNX network is similar
rather on a mainframe than on a set of microcomputers. Users simply
aware of the wide range of resources available for useany application. But, unlike the mainframe, QNX provides both
highly sensitive environment, since the corresponding computing
power to meet user needs can be
available on any site.
In process control environments such as PLC and
other real-time I/O devices may require
more resources than other, less critical applications like
word processor. The QNX network is responsive enough to
to support both kinds of applications at the same time - QNX
allows you to concentrate computing power where and when it is needed
necessary.
Flexible networking
QNX networks can be interconnected using a variety of hardware
and industry standard protocols. New network architecture can
be presented at any time without interfering with the operating system,
since it is completely transparent to application programs and
users.
Note:
List of networking hardware supported by QNX, via some
time may increase. For details, see your network hardware documentation.
the funds you are going to use.
Each node on a QNX network is assigned a unique number, which
becomes its identifier. This number is the only meansallowing you to determine whether QNX is running as a network or as an operating system
single computer system.
This degree of transparency is another example of outstanding power
QNX message passing architectures. Important functions in many systems
like networking, interprocess communication, or even
message passing is formed at the top of the operating system, not
integrated directly into the core. The result is often awkward,
ineffective interface with "double standards".
QNX is based on the principle that efficient communication is the key to
efficient work. Thus, message passing is the cornerstone
the stone of the QNX architecture, increasing the efficiency of all transactions
for all processes in the entire system, do they communicate through the system
computer bus or through a kilometer of coaxial cable.
Let's take a closer look at the structure and functions of QNX.
NA> Hammer...
Scored.
From
Kirill Frolov
→
To
Roman Alexandrov
5 July 2003
Press RESET immediately, Roman Alexandrov!
On Fri, 04 Jul 03 23:33:36 +0400, Roman Alexandrov wrote:
NA>> Well, I don’t have access to the Internet and never will.
RA> No modem? Be-e-e-day...
And some suffer like this without a modem, through “butt-cutting”.
They say beeline, $10/month and gigabytes of traffic for free.
I don't believe it. I know that every megabyte costs something. And in this month
You can drag out megabytes or, on the contrary, download an enormous amount.
Something is wrong here... :-/
By the way, the question is on topic. I understand that there are only 4 options
connections: via serial interface, via the same interface
but with IRDA emulation on it, via IRDA and via bluetuth. And on top
This is all the phone pretends to be a modem and after submitting some
AT commands start PPP between the computer and the phone (namely
telephone, and not the Internet provider), and the telephone has its own
address and IP over GPRS works. Am I right?
If I’m right, then where does the myth come from that you desperately need a special
software like a phone driver (where all sorts of melodies are uploaded)
for Windows? You can also install generic 115200 modem, just a list
Where can I find AT commands... :-/
From
Nikolaj Amosov
→
To
Kirill Frolov
8 July 2003
Hello Kirill!
Monday 07 July 2003 23:56:16 Kirill Frolov -> Nikolaj Amosov:
KF> On Sun, 06 Jul 03 20:49:23 +0400, Nikolaj Amosov wrote:
NA>>>> I’m connecting with MAC on 14400 disgustingly -
NA>>>> I even had to slow down
NA>>>> ports up to 9600. Now at least it doesn’t hang...
KF>>> And I’m connecting with Vega at 1200...
NA>> Is it like XTRom or something?
KF> Hayes!
I thought that on haes the lower speed is 2400. How is it necessary?
perverted to connect to 1200? ;)
[REAL ZX]
From
Kirill Frolov
→
To
Nikolaj Amosov
9 July 2003
Press RESET immediately, Nikolaj Amosov!
On Tue, 08 Jul 03 21:06:09 +0400, Nikolaj Amosov wrote:
NA>>>>> I’m connecting with MAC at 14400 disgustingly -
NA>>>>> even had to slow down
NA>>>>> ports up to 9600. Now at least it doesn’t hang...
KF>>>> And I’m connecting with Vega at 1200...
NA>>> Is it like XTRom or something?
KF>> Hayes!
NA> I thought that the lower speed on the haes was 2400.
You didn't think well. Khaes (branded) had speeds of 5 bits/sec.
Amplitude modulation... (Bell103/113, V.21) From standard protocols
lowest speed hayes-smartmodem modem -- 300bit/sec, modulation
frequency, the Bell212A protocol can still be supported by some
(mostly old) modems. There is also a standard asymmetrical one
V.23 protocol -- 1200bit/s in one direction and 75bit/s in the other,
frequency modulation. Every modem can whistle at 1200bit/sec, often
in 3 different standards: American Bell212A, standard V.22
(modulation method in both cases OFM-4) and the already mentioned V.23 (FM).
Well, V.22bis is already the first standard protocol for all
2400 bps, quadratic modulation.
By the way, I want to remind all nodes that if their station does not respond
in ZMH using the V.22 protocol (this is in Z2, in Z1 there will be Bell212A) - they violate
fidonet policy. NA> How perverted is it necessary to connect to 1200? ;)
AT*N0 or ATN0, or AT&N0 - depends on the modem.
From
Roman Alexandrov
→
To
Kirill Frolov
11 July 2003
Hello, Kirill!
11 Jul 03, 01:08, Kirill Frolov wrote to Nikolaj Amosov on the topic "Re: QNX":
NA>> And how long will this connection be and is the price included?
NA>> access to the Internet?
KF> It seems like beeline is the cheapest and you pay less than $10 a month there
KF> is not allowed.
Well, if you don’t talk, don’t send SMS and don’t go on the Internet, then the most
cheap is the federal MTS, something around 2.6 dollars per month.
Happy connections. Roman.