1461101716-6562919a-7003-41a5-a6b2-f18e2ae4ac0d

1. A method for automating access to a website, wherein the website is accessed by an application on behalf of a user of the application, comprising:
obtaining community data associated with interactions between a set of users and the website;
analyzing the community data to identify an interactivity request made by the website to a first user in the set of users of the website, wherein the interactivity request is a request from the website for user-specific data that is required to allow the first user to access the website;
storing, in a repository, the interactivity request made by the website;
acquiring user-specific data from a second user for accessing the website, based on the stored interactivity requests from the set of first users, wherein said acquiring occurs prior to the second user accessing the website; and
using the user-specific data to automate access to the website for the second user.
2. The method of claim 1, further comprising:
determining a set of navigation patterns associated with the website from the community data; and
using the navigation patterns to further automate access to the website for the second user.
3. The method of claim 2, wherein access to the website involves at least one of:
performing navigation operations through webpages in the website;
performing parsing operations to extract data from webpages in the website;
aggregating content from the website;
executing a workflow on the website; and
entering information into the website.
4. The method of claim 1, wherein the user-specific data further comprises an identifier and a password for the user.
5. The method of claim 1, wherein the interactivity request is associated with at least one of an image, an audio file, a question, a biometric signature, a certificate, a file, a form field, and a token.
6. The method of claim 1, wherein the interactivity request is used to verify an identity of the first user.
7. The method of claim 1, wherein the response to the interactivity request is obtained using an interactivity object.
8. A method for automating access to a website, comprising:
accessing the website with user-specific data associated with a first user of the website;
obtaining, from the website, an interactivity request for the first user wherein the interactivity request is a request from the website for user-specific data that is required to allow the first user to access the website;
presenting the interactivity request to the first user;
obtaining a first response to the interactivity request from the first user;
using the first response to access the website for the first user;
adding the interactivity request obtained from the website for the first user to a set of interactivity request associated with user accesses to the website; and
using the interactivity request obtained from the website for the first user to facilitate access to the website for a second user of the website, which involves using the interactivity request to obtain user-specific data from the second user prior to the second user accessing the website.
9. The method of claim 8, wherein access to the website is facilitated for the second user by:
presenting the interactivity request to the second user;
obtaining a second response to the interactivity request from the second user; and
using the second response to the interactivity request to automate access to the website for the second user.
10. The method of claim 8, further comprising:
determining a set of navigation patterns associated with the website by analyzing the set of interactivity requests; and
using the navigation patterns to further facilitate access to the website for the second user.
11. The method of claim 10, wherein access to the website involves at least one of:
performing navigation operations through webpages in the website;
performing parsing operations to extract data from webpages in the website;
aggregating content from the website;
executing a workflow on the website; and
entering information into the website.
12. The method of claim 8, wherein the interactivity request is associated with at least one of an image, an audio file, a question, a biometric signature, a certificate, a file, a form field, and a token.
13. The method of claim 8, wherein the response to the interactivity request is obtained using an interactivity object.
14. A system that automates access to a website, wherein the website is accessed by an application on behalf of a user of the application, comprising:
a processor;
a memory associated with the processor;
a user data repository comprising community data associated with interactions between a set of users and the website;
a learning engine configured to analyze the community data to identify an interactivity request made by the website to the set of users of the website, wherein the interactivity request is a request from the website for user-specific data that is required to allow the first user to access the website;
a learning repository configured to store the identified interactivity request made by the website; and
an application configured to:
prior to the second user accessing the website, acquire user-specific data from the second user for accessing the website, based on the stored interactivity requests from the set of users; and
use the response to the interactivity request to automate access to the website for the second user.
15. The system of claim 14, further comprising:
the learning repository further configured to store a set of interactivity requests associated with user accesses to the website,
wherein the learning engine is further configured to:
add the interactivity request to the set of interactivity requests; and
use the set of interactivity requests to determine a set of navigation patterns associated with the website, and

wherein the application is further configured to use the navigation patterns to automate access to the website for the second user.
16. The system of claim 15, wherein access to the website involves at least one of:
performing navigation operations through webpages in the website;
performing parsing operations to extract data from webpages in the website;
aggregating content from the website;
executing a workflow on the website; and
entering information into the website.
17. The system of claim 14, wherein the user-specific data acquired from the second user comprises an identifier and a password for the second user.
18. The system of claim 14, wherein the interactivity request is associated with at least one of an image, an audio file, a question, a biometric signature, a certificate, a file, a form field, and a token.
19. The system of claim 14, wherein the interactivity request is used to verify an identity of the first user.
20. The system of claim 14, wherein the response to the interactivity request is obtained using an interactivity object.
21. A non-transitory computer-readable storage medium storing instructions that when executed by a computer cause the computer to perform a method for automating access to a website, wherein the website is accessed by an application on behalf of a user of the application, comprising:
obtaining community data associated with interactions between a set of users and the website;
analyzing the community data to identify an interactivity request made by the website to a first user in the set of users of the website, wherein the interactivity request is a request from the website for user-specific data that is required to allow the first user to access the website;
storing, in a repository, the interactivity request made by the website;
acquiring user-specific data from a second user for accessing the website, based on the stored interactivity requests from the set of first users, wherein said acquiring occurs prior to the second user accessing the website; and
using the user-specific data to automate access to the website for the second user.
22. The non-transitory computer-readable storage medium of claim 21, the method further comprising:
determining a set of navigation patterns associated with the website from the community data; and
using the navigation patterns to further automate access to the website for the second user.
23. The non-transitory computer-readable storage medium of claim 22, wherein access to the website involves at least one of:
performing navigation operations through webpages in the website;
performing parsing operations to extract data from webpages in the website;
aggregating account information from the website;
executing a workflow on the website; and
entering information into the website.
24. The non-transitory computer-readable storage medium of claim 21, wherein the user-specific data acquired from the second user comprises an identifier and a password for the second user.
25. The non-transitory computer-readable storage medium of claim 21, wherein the interactivity request is associated with at least one of an image, an audio file, a question, a biometric signature, a certificate, a file, a form field, and a token.
26. The non-transitory computer-readable storage medium of claim 21, wherein the interactivity request is used to verify an identity of the first user.
27. The non-transitory computer-readable storage medium of claim 21, wherein the response to the interactivity request is obtained using an interactivity object.

The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.

1. A measurement system for measuring a rate of flow through a flow controller that can be operatively coupled to a fluid distribution system downstream of the flow controller, the measurement system comprising:
an inlet;
a pressure sensor operatively coupled to the inlet;
a valve operatively coupled to the inlet downstream of the pressure sensor;
a chamber having a known internal volume and operatively coupled to the valve downstream of the valve; and
a choking orifice operatively coupled to the inlet upstream of the pressure sensor; the choking orifice having a choked position;
wherein, when the inlet of the measurement system is operatively coupled to the fluid distribution system, the measurement system:
collects first rate of pressure rise data pertaining to the chamber during a first interval in which the choking orifice is in the choked position and the rate of flow is sufficient that the pressure upstream of the choking orifice is approximately twice that of the pressure downstream of the choking orifice;
calculates a first rate of flow through the flow controller based upon the first rate of pressure rise data, and the known internal volume of the chamber; and
determines the measured rate of flow through the flow controller based upon the calculated first rate of flow.
2. The measurement system of claim 1, wherein the choking orifice is a three way valve having an open position, a closed position, and a choked position, the choked position causing the pressure upstream of the three way valve to be approximately twice that of the pressure downstream of the three way valve.
3. The measurement system of claim 1, wherein the choking orifice is a multi-position valve capable of being positioned to cause the pressure upstream of the multi-position valve to be approximately twice that of the pressure downstream of the multi-position valve dependent upon the rate of flow through the flow controller.
4. The measurement system of claim 1, wherein the first rate of pressure rise data includes a change in pressure in the chamber over the first interval.
5. The measurement system of claim 1, wherein the duration of the first interval is determined based upon the first rate of pressure rise data meeting a condition.
6. The measurement system of claim 1, wherein the duration of the first interval is a predetermined length of time.
7. The measurement system of claim 1, wherein the choking orifice further has an open position, wherein when the inlet of the measurement system is operatively coupled to the fluid distribution system, the measurement system is further operable to:
collect second rate of pressure rise data pertaining to an internal volume of the fluid distribution system and an internal volume of the measurement system including the chamber during a second interval in which the choking orifice is in the open position;
calculate a second rate of flow based upon the second rate of pressure rise data;
calculate an error connection based upon the calculated first rate of flow and the calculated second rate of flow;
collect third rate of pressure rise data pertaining to the internal volume of the fluid distribution system and the internal volume of the measurement system including the chamber during a third interval in which the choking orifice is in the open position; and
determine the measured rate of flow through the flow controller based upon the third rate of pressure rise data and the calculated error correction.
8. The measurement system of claim 7, wherein the choking orifice is a three way valve having an open position, a closed position, and a choked position, the choked position causing the pressure upstream of the three way valve to be approximately twice that of the pressure downstream of the three way valve.
9. The measurement system of claim 7, wherein the choking orifice is a multi-position valve capable of being positioned to cause the pressure upstream of the multi-position valve to be approximately twice that of the pressure downstream of the multi-position valve dependent upon the rate of flow through the flow controller.
10. The measurement system of claim 7, wherein the first rate of pressure rise data includes a change in pressure over the first interval and the second rate of pressure rise data includes a change in pressure over the second interval.
11. The measurement system of claim 7, wherein at least one of the duration of the first interval and the duration of the second interval is determined based upon at least one of the first rate of pressure rise data and the second rate of pressure rise data meeting a condition.
12. The measurement system of claim 7, wherein at least one of the duration of the first interval and the duration of the second interval is a predetermined length of time.
13. A method of measuring a rate of flow through a mass flow controller that is operatively coupled to a fluid distribution system downstream of the flow controller, the fluid distribution system having a first region and a second region, the first region having a known first internal volume and the second region having a second internal volume, wherein the first volume is operatively coupled to the second region via a choking orifice having a choked position, the method comprising acts of:
placing the choking orifice in the choked position;
collecting first rate of pressure rise data pertaining to the first region during a first interval in which the choking orifice is in the choked position and the rate of flow is sufficient that the pressure upstream of the choking orifice is approximately twice that of the pressure downstream of the choking orifice; and
calculating a first rate of flow through the flow controller based upon the first rate of pressure rise data, and the known first internal volume; and
determining the measured rate of flow through the flow controller based upon the calculated first rate of flow.
14. The method of claim 13, wherein the choking orifice is a three way valve having an open position, a closed position, and a choked position, the method further comprising an act of:
selecting, for use as the choking orifice, a three way valve that is tuned to have a choked position that causes the pressure upstream of the three way valve to be approximately twice that of the pressure downstream of the three way valve.
15. The method of claim 13, wherein the choking orifice is a multi-position valve, and wherein the act of placing the choking orifice in a choked position includes an act of placing the multi-position valve in a position to cause the pressure upstream of the multi-position valve to be approximately twice that of the pressure downstream of the multi-position valve dependent upon the rate of flow through the flow controller.
16. The method of claim 13, wherein the first rate of pressure rise data includes a change in pressure over the first interval.
17. The method of claim 13, wherein the duration of the first interval is determined based upon the first rate of pressure rise data meeting a condition.
18. The method of claim 13, wherein the duration of the first interval is a predetermined length of time.
19. The method of claim 13, wherein the choking orifice further has an open position, and wherein the act of determining the measured rate of flow through the flow controller includes acts of:
placing the orifice in the open position;
collecting second rate of pressure rise data pertaining to the first region and the second region during a second interval in which the choking orifice is in the open position;
calculating a second rate of flow based upon the second rate of pressure rise data;
calculating an error correction based upon the calculated first rate of flow and the calculated second rate of flow;
collecting third rate of pressure rise data pertaining to the first region and the second region during a third interval in which the choking orifice is in the open position, and
determining the measured rate of flow through the flow controller based upon the third rate of pressure rise data and the calculated error correction.
20. The method of claim 19, wherein the choking orifice is a three way valve having an open position, a closed position, and a choked position, the method further comprising an act of:
selecting, for use as the choking orifice, a three way valve that is tuned to have a choked position that causes the pressure upstream of the three way valve to be approximately twice that of the pressure downstream of the three way valve.
21. The method of claim 19, wherein the choking orifice is a multi-position valve, and wherein the act of placing the choking orifice in a choked position includes an act of placing the multi-position valve in a position to cause the pressure upstream of the multi-position valve to be approximately twice that of the pressure downstream of the multi-position valve dependent upon the rate of flow through the flow controller.
22. The method of claim 19, wherein the first rate of pressure rise data includes a change in pressure over the first interval and the second rate of pressure rise data includes a change in pressure over the second interval.
23. The method of claim 19, wherein the act of collecting the first rate of pressure rise data is performed before the act of collecting the second rate of pressure rise data.
24. The method of claim 19, wherein at least one of the duration of the first interval and the duration of the second interval is determined based upon at least one of the first rate of pressure rise data and the second rate of pressure rise data meeting a condition.
25. The method of claim 19, wherein at least one of the duration of the first interval and the duration of the second interval is a predetermined length of time.

1461101706-a34fd8fd-c99b-449d-bc58-626e70700ac4

What is claimed is:

1. A method for providing hint instructions to a processor, comprising the steps of:
generating a hint instruction in response to a set of object code to be executed by the processor;
inserting a break instruction into the object code such that the break instruction causes the processor to obtain and execute the hint instruction.
2. The method of claim 1, wherein the step of inserting a break instruction comprises the step of inserting the break instruction in place of a selected instruction in the object code.
3. The method of claim 2, wherein the step of generating a hint instruction comprises the step of generating a set of hint code which includes the hint instruction and the selected instruction such that the break instruction causes the processor to obtain and execute the hint code.
4. The method of claim 2, wherein the step of generating a hint instruction comprises the step of loading the hint instruction into a hint register such that the break instruction causes the processor to obtain the hint instruction from the hint register and execute the hint instruction.
5. The method of claim 4, wherein the step of loading the hint instruction into a hint register further includes the step of loading the selected instruction into the hint register such that the break instruction causes the processor to obtain the selected instruction from the hint register and execute the selected instruction.
6. The method of claim 4, wherein the step of loading the hint instruction into a hint register further includes the step of loading an address into the hint register such that the break instruction causes the processor to load the hint register using the address.
7. The method of claim 1, wherein the step of generating a hint instruction comprises the step of determining the hint instruction in response to a micro-architecture of the processor.
8. A computer system, comprising:
object code adapter that determines a hint instruction in response to a set of object code and that inserts a break instruction into the object code;
processor that executes the object code such that the break instruction causes the processor to obtain and executes the hint instruction.
9. The computer system of claim 8, wherein the object code adapter inserts the break instruction in place of a selected instruction in the object code.
10. The computer system of claim 9, wherein the object code adapter generates a set of hint code which includes the hint instruction and the selected instruction.
11. The computer system of claim 10, wherein the processor branches to the hint code when executing the break instruction.
12. The computer system of claim 9, wherein the processor includes a hint register for holding the hint instruction such that the processor obtains the hint instruction from the hint register and executes the hint instruction in response to the break instruction.
13. The computer system of claim 12, wherein the hint register holds the selected instruction such that the processor obtains the selected instruction from the hint register and executes the selected instruction in response to the break instruction.
14. The computer system of claim 12, wherein the hint register holds an address such that the processor loads the hint register using the address in response to the break instruction.
15. The computer system of claim 8, wherein the object code adapter determines the hint instruction in response to a micro-architecture of the processor.

The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.

Having thus described our invention, what we claim as new and desire to secure by letters patents is:

1. A fault tolerant multichannel communications system having a plurality of communication channels transmitted over a trasmission medium, said communications system comprising:
(a) a plurality of line cards 1, 2, . . . , N at each end of a transmission medium, with one of said line cards at each end of said transmission medium for each of said channels and with one of said line cards s at each end of said medium being designated as a spare line card, each said line card having a plurality of local ports, a link port, and a inputoutput port;
(b) a plurality of switches with one switch at each end of said medium for each of said line cards, each switch capable for interconnecting a link port of a corresponding one of said line cards to an IO port or a local port of latter said corresponding one line card, and each switch also capable of interconnecting said IO port to either said link port or a local port of said corresponding one line card, with a local port of each line card i being hard wired to a local port of line card i 1 mod N and a local port of line card i1 mod N; and
(c) means for rerouting the IO of a failed line card f as follows: for each line card i belonging to a set s, f) of line cards, switching the IO port of line card (i1) mod N to a link port of line card i, where s f, wherein said failed channel is restored, where said set Is,f) is the set of all line cards such that
3
s
,
f

)

=

{
{

s
,

s
+
1

,
,

f
–
1
}

,
if
s

<
f

;
{

s
,

s
+
1

,
,

N
–
1

,
0
,
1
,
,

f
–
1
}

,
if
s

>
f

;
0
,
if
s

=

f
.
2. A fault tolerant multichannel communications system having a plurality of communication channels, said communications system comprising:
(a) a plurality of line cards 1, 2, . . . , N at each end of said communications medium, with one of said line cards at each end of said medium for each of said channels and with one of said line cards s at each end of said medium being designated as a spare line card, each said line card having a plurality of local ports for a link port, and a inputoutput port for;
(b) a plurality of switches with one switch at each end of said medium for each of said line cards, each switch capable for interconnecting a link port of a corresponding one of said line cards to an IO port or a local port of latter said corresponding one line card, and each switch also capable of interconnecting said IO port to either said link port or a local port of said corresponding one line card, with a local port of each line card i being hard wired to a local port of line card i1 mod N and a local port of line card i1 mod N; and
(c) means for rerouting a failed line card f as follows: for each line card belonging to a set of line cards (f, s), switching the IO port of line card i to a link port of line card (i1) mod N, where s f wherein said failed channel is restored, where (f, s) is the set of all line cards such that
4
f
,
s

)

=

{
{

f
,

f
+
1

,
,

f
–
1
}

,
if
f

<
s

;
{

f
,

f
+
1

,
,

N
–
1

,
0
,
1
,
,

s
–
1
}

,
if
f

>
s

;
0
,
if
f

=

s
.
3. In a multichannel communications system having N channels with line cards 0 through N1 connected to each end of a transmission medium of said system with each line card having an IO port, a link port and a plurality of local ports, with one line card connected to each end of said transmission medium for each of said channels, a method of rerouting channels upon detection of a failure of two of said line cards f0 and f1, said method comprising:
(a) designating two of said line cards as spare line cards s0 and s1;
(b) hardwiring one of said local ports of each line card i mod N to one of said local ports of each line card (i1) mod N and (i1) mod N;
(c) rerouting said failed line cards f0 and f1 as follows:
i. if s0f0f1s1 then doing spare-to-failed rerouting from s0 to f0 and failed-to-spared rerouting from s1 to f1, and
ii. if s0f0s1f1 then doing spare-to-failed rerouting from s0 to f0 and spare-to-failed rerouting from s1 to f1, said spare-to-failed rerouting comprising switching each said I0 port of line card (i1) mod N to said link port of line card i mod N for all i ( s, f), where:
5
s
,
f

)

=

{
{

s
,

s
+
1

,
,

f
–
1
}

,
if
s

<
f

;
{

s
,

s
+
1

,
,

N
–
1

,
0
,
1
,
,

f
–
1
}

,
if
s

>
f

;
0
,
if
s

=
f

,
and said failed-to-spare rerouting from f to s comprising switching said IO port of line card i mod N to said link port of line card (i1) mod N for all i(f, s), where:
6
f
,
s

)

=

{
{

f
,

f
+
1

,
,

f
–
1
}

,
if
f

<
s

;
{

f
,

f
+
1

,
,

N
–
1

,
0
,
1
,
,

s
–
1
}

,
if
f

>
s

;
0
,
if
f

=

s
.
4. A fault tolerant multichannel communication system, comprising:
(a) a transmission medium;
(b) N line cards 0 through N1, each line card connecting a separate channel to an end of said transmission medium, each line card having an IO port, a link port, and a plurality of local ports, with two of said line cards s0 and s1 being designated as spare line cards, with one of said local ports of each line card i mod N being connected to one of said local ports of line card (i1) mod N and line card (i1) mod N;
(c) A plurality of switches, each of said switches for interconnecting said IO port, said link port, and said local ports of a corresponding one of said line cards; and
(d) a means for rerouting IOs from failed line cards f0 and f1 using said switches as follows:
i. if s0f0f1s1 then doing spare-to-failed rerouting from s0 to f0 and failed-to-spared rerouting from s1 to f1, and
ii. if s0f0s1f1 then doing spare-to-failed rerouting from s0 to f0 and spare-to-failed rerouting from s1 to f1, said spare-to-failed rerouting comprising switching each said IO port of line card (i1) mod N to said link port of line card i mod N for all i(s, f), where:
7
s
,
f

)

=

{
{

s
,

s
+
1

,
,

f
–
1
}

,
if
s

<
f

;
{

s
,

s
+
1

,
,

N
–
1

,
0
,
1
,
,

f
–
1
}

,
if
s

>
f

;
0
,
if
s

=
f

,
and said failed-to-spare rerouting from f to s comprising switching said IO port of line card i mod N to said link port of line card (i1) mod N for all i(f, s), where:
8
f
,
s

)

=

{
{

f
,

f
+
1

,
,

f
–
1
}

,
if
f

<
s

;
{

f
,

f
+
1

,
,

N
–
1

,
0
,
1
,
,

s
–
1
}

,
if
f

>
s

;
0
,
if
f

=

s
.
5. In a multichannel communications system having N channels with line cards 0 through N1 connected to each end of a transmission medium of said system with each line card having an IO port, a link port and a plurality of local ports, with one line card connected to each end of said transmission medium for each of said channels, a method of rerouting channels upon detection of a failure of one of said line cards, said method comprising:
(a) partitioning said line cards into groups of size at most k1, where each group has at least one spare line card, and where k equals the number of local ports on each line card;
(b) for each line card in each of said groups that is not a spare line card, hardwiring one of latter said each line card’s local ports to a local port of said one spare line card in said each group; and
(c) upon detection of a failure of anv of said line cards, rerouting said IO port of latter said failed line card to the link port of said designated spare line card for the group of line cards containing said failed line card.
6. In a multichannel communications system having N channels with line cards 0 through N1 connected to each end of a transmission medium of said system with each line card having an IO port, a bypass port, a link port and a plurality of k local ports where k<N, with one line card connected to each end of said transmission medium for each of said channels, a method of rerouting channels upon detection of a failure of one of said line cards, said method comprising:
(a) designating one of said line cards as a spare line card s;
(b) hard wiring the local ports of each of said line cards such that there is a path from each of said line cards to said spare line card; and
(c) rerouting the IO port of a failed line card by switching said IO port of said failed line card to its said bypass port which is hard wired to said local port of another one of said line cards and switching said latter local port to said link port of spare line card s.
7. A fault tolerant multichannel communication system, comprising:
(a) a transmission medium;
(b) N line cards 0 through N1, each line card connecting a separate channel to an end of said transmission medium, each line card having an IO port, a bypass port, a link port, and a plurality of k local ports where k<N, with one of said line cards being designated as spare line card s, with said local ports of said line cards being hardwired so that there is a path from each of said line cards to line card s;
(c) A plurality of switches, each of said switches for interconnecting said IO port, said bypass port, said link port, and said local ports of a corresponding one of said line cards; and
(d) a means for rerouting IOs from a failed one of said line cards by using said one of said switches corresponding to said line card to switch said IO port of said failed line card to its said bypass port whichis hardwired to said local port of another one of said line cards and switching said latter local port to said link port of spare line card s.
8. In a multichannel communications system having N channels with line cards 0 through N1 connected to each end of a transmission medium of said system with each line card having an IO port, a bypass port, a link port and a plurality of local ports, with one line card connected to each end of said transmission medium for each of said channels, a method of rerouting channels upon detection of a failure of one of said line cards, said method comprising:
(a) designating one of said line cards as a spare line card;
(b) hard wiring one of said local ports of each of up to k of said line cards to each of said of said spare line cards, where k is the number of local ports each of said line cards;
(c) hard wiring said local ports of each of said line cards hard wired to said local ports of said spare line card to an additional k1 of said line cards;
(d) repeating step 8c for each line card of said k1 line cards by hard wiring each of latter said line cards in turn to an additional k1 of said line cards and so on until all of said line cards form a tree configuration with a plurality of subtrees;
(e) hard wiring the bypass port of each line card that is a leaf of said tree configuration to the local port of another line card that is a leaf of said tree configuration;
(f) hard wiring the bypass port of each of said line cards that is not a leaf to the local port of a line card that is a leaf; and
(g) rerouting the IO port of a failed one of said line cards by switching its IO port to its bypass port and switching appropriate local ports of said line cards so that said IO port of said failed line card is connected to said link port of said spare line card.
9. In a multichannel communications system having N channels with line cards 0 through N1 connected to each end of a transmission medium of said system with each line card having an IO port, a bypass port, a link port and a plurality of k local ports where k<N, with one line card connected to each end of said transmission medium for each of said channels, a method of rerouting channels upon detection of a failure of two of said line cards, said method comprising:
(a) designating two of said line cards as spare line cards s1 and s2;
(b) hardwiring said local ports of each of said line cards such that for any pair of line cards f1 and f2 there are either two paths P1 from f1 to s1 and P2 from f2 to s2 where P1 and P2 have no common wires, or two paths P1 from f1 to s2 and P2 from f2 to s1 where P1 and P2 have no common wires;
(c) rerouting the IO of up to two failed line cards by switching the IO of said failed line cards to said spare cards by setting switches along paths from said failed line cards to said spares, where said paths have no common wires.
10. A fault tolerant multichannel communication system, comprising:
(a) a transmission medium;
(b) N line cards 0 through N1, each line card connecting a separate channel to an end of said transmission medium, each line card having an IO port, a bypass port, a link port, and a plurality of k local ports k<N, with two of said line cards being designated as spare line cards s1 and s2, with said local ports of said line cards being hardwired such that for any pair of line cards f1 and f2 there are either two paths P1 from f1 to s1 and P2 from f2 to S2, where P1 and P2 have no common wires, or two paths P1 from f1 to S2 and P2 from f2, to s1 where P1 and P2 have no common wires;
(c) A plurality of switches, each of said switches for interconnecting said IO port, said bypass port, said link port, and said local ports of a corresponding one of said line cards; and
(d) a means for rerouting IOs from up to two failed line cards by setting said switches along of those of said paths from said failed line cards to said spares. where said paths have no common wires.
11. In a multichannel communications system having N channels with line crds 0 through N1 connected to each end of a transmission medium of said system with each line card having an IO port, a bypass port, a link port and a plurality of local ports, with one line card connected to each end of said transmission medium for each of said channels, a method of rerouting channels upon detection of failures of up to two of said line cards, said method comprising:
(a) designating two of said line cards s1 and s2 as spare cards;
(b) hardwiring another one of said line cards i to said local ports of s1 and s2 to form a dual tree, where i is a leaf card of said dual tree and s1 and s2 are internal cards of said dual tree, and said dual tree comprises two trees T1 and T2, where s1 and line card i belong to T1, and s2 and line card i belong to T2;
(c) hardwiring another line card x of said line cards to said dual tree according to the following rules:
i. if there are two internal cards j and k belonging to T1 and T2 respectively, with each of said cards j and k hardwired to each other by less than k1 leaf cards then hardwire local ports of line card to said local ports of j and k, where is a leaf card of said trees T1 and T2,
ii. if rule 11(c)i cannot be applied, and if a single leaf card l is hardwired to two internal cards i1 and i2 belonging to T1 and T2 respectively, and any other leaf card m hardwired to two internal cards is at least as far as I is from the furthest spare card, then disconnect l from i1, hardwire a local port of to a local port of i1, hardwire a local port of to a local port of 1, where is now a leaf card belonging to T1 and l now belongs exclusively to T2, and
iii. if rules 11(c)i and 11(c)ii cannot be applied, and two leaf cards p and q are hardwired to each other, then disconnect p from q, hardwire local ports of to local ports of p and q, where is a leaf card belonging to both T1 and T2 and p and q become internal cards; and

(d) rerouting the IOs of up to two failed line cards f1 and f2 by finding the shortest paths P1,1 from f1 to s1, P1,2 from f1 to s2, p2,1 from f2 to s1, and p2,2 from f2 to s2, choosing q1 as p1,2 and q2 as p2,2 if p1,1 and p2,2 do not have a common wire, and choosing q1 as p1,2 and q2 as p2,1 otherwise, setting switches along said paths q1 and q2 such that said IOs of said failed line cards are routed to the link ports of said spare line cards.