46:
217:
In practice, bitstreams are not used directly to encode bytestreams; a communication channel may use a signalling method that does not directly translate to bits (for instance, by transmitting signals of multiple frequencies) and typically also encodes other information such as
380:
signal when the consumer is ready for the next byte. When the producer can not be paused—a keyboard or some hardware that does not support flow control—the system typically attempts to temporarily store the data until the consumer is ready for it, typically using a
238:(FPGA). Although most FPGAs also support a byte-parallel loading method as well, this usage may have originated based on the common method of configuring the FPGA from a serial bit stream, typically from a serial
371:
When bytes are generated faster than the destination can use them and the producer is a software algorithm, the system pauses it with the same process synchronization techniques. When the producer supports
385:. Often the receiver can empty the buffer before it gets completely full. A producer that continues to produce data faster than it can be consumed, even after the buffer is full, leads to unwanted
311:
Compression algorithms often code in bitstreams, as the 8 bits offered by a byte (the smallest addressable unit of memory) may be wasteful. Although typically implemented in
353:
Often the contents of a bytestream are dynamically created, such as the data from the keyboard and other peripherals (/dev/tty), data from the
494:
364:
In those cases, when the destination of a bytestream (the consumer) uses bytes faster than they can be generated, the system uses
110:
451:
258:
82:
524:
129:
476:
178:
is sometimes used interchangeably. An octet may be encoded as a sequence of 8 bits in multiple different ways (see
316:
89:
312:
67:
246:
chip. The detailed format of the bitstream for a particular FPGA is typically proprietary to the FPGA vendor.
354:
327:
270:
239:
235:
202:
96:
514:
382:
274:
206:
63:
34:
78:
519:
20:
490:
365:
331:
278:
254:
56:
300:
to a bytestream paradigm. In particular, in Unix-like operating systems, each process has three
431:
426:
323:
234:
The term bitstream is frequently used to describe the configuration data to be loaded into a
219:
436:
8:
373:
338:
441:
394:
266:
250:
186:
103:
446:
416:
398:
285:
171:
421:
301:
223:
182:) so there is no unique and direct translation between bytestreams and bitstreams.
386:
305:
262:
253:
of bits have been studied for their mathematical properties; these include the
508:
179:
243:
472:
411:
390:
297:
194:
27:
345:. Other media types are defined for bytestreams in well-known formats.
289:
190:
45:
319:
such as Python and Java offer native interfaces for bitstream I/O.
155:
293:
308:
provides bytestream communications between different processes.
368:
to make the destination wait until the next byte is available.
296:, standard I/O libraries convert lower-level paged or buffered
198:
326:
which provides a byte-stream service to its clients is the
167:
19:
For the more theoretical concept in computer science, see
159:
304:, which are examples of unidirectional bytestreams. The
358:
185:Bitstreams and bytestreams are used extensively in
70:. Unsourced material may be challenged and removed.
506:
212:
334:, which provides a bidirectional bytestream.
130:Learn how and when to remove this message
507:
68:adding citations to reliable sources
39:
13:
452:Traffic flow (computer networking)
14:
536:
249:In mathematics, several specific
497:from the original on 2016-11-30.
479:from the original on 2016-09-08.
44:
348:
341:for an arbitrary bytestream is
55:needs additional citations for
483:
475:. Python Software Foundation.
465:
259:Ehrenfeucht–Mycielski sequence
170:. Typically, each byte is an
1:
458:
355:pseudorandom number generator
328:Transmission Control Protocol
271:regular paperfolding sequence
236:field-programmable gate array
203:Transmission Control Protocol
376:, the system only sends the
322:One well-known example of a
7:
404:
229:
213:Relationship to bytestreams
10:
541:
197:bitstreams are carried by
35:Bitstream (disambiguation)
32:
25:
18:
21:Stream (computer science)
16:Sequence of binary digits
525:Reconfigurable computing
343:application/octet-stream
226:together with its data.
366:process synchronization
332:Internet protocol suite
432:MPEG elementary stream
427:Byte-oriented protocol
324:communication protocol
275:Rudin–Shapiro sequence
26:For data streams, see
437:Reliable byte stream
317:high-level languages
64:improve this article
33:For other uses, see
339:Internet media type
313:low-level languages
306:Unix pipe mechanism
279:Thue–Morse sequence
255:Baum–Sweet sequence
442:Stream (computing)
395:network congestion
267:Kolakoski sequence
251:infinite sequences
187:telecommunications
174:, and so the term
515:Data transmission
447:Stream processing
417:Bit-stream access
399:denial of service
286:operating systems
166:is a sequence of
150:), also known as
140:
139:
132:
114:
532:
520:Binary sequences
499:
498:
487:
481:
480:
469:
422:Bitstream format
344:
302:standard streams
224:error correction
135:
128:
124:
121:
115:
113:
72:
48:
40:
540:
539:
535:
534:
533:
531:
530:
529:
505:
504:
503:
502:
489:
488:
484:
471:
470:
466:
461:
456:
407:
387:buffer overflow
351:
342:
232:
215:
193:. For example,
152:binary sequence
136:
125:
119:
116:
73:
71:
61:
49:
38:
31:
24:
17:
12:
11:
5:
538:
528:
527:
522:
517:
501:
500:
491:"Class BitSet"
482:
463:
462:
460:
457:
455:
454:
449:
444:
439:
434:
429:
424:
419:
414:
408:
406:
403:
350:
347:
263:Fibonacci word
231:
228:
214:
211:
205:transports an
172:8-bit quantity
138:
137:
52:
50:
43:
15:
9:
6:
4:
3:
2:
537:
526:
523:
521:
518:
516:
513:
512:
510:
496:
492:
486:
478:
474:
468:
464:
453:
450:
448:
445:
443:
440:
438:
435:
433:
430:
428:
425:
423:
420:
418:
415:
413:
410:
409:
402:
400:
396:
392:
388:
384:
379:
375:
369:
367:
362:
360:
356:
346:
340:
335:
333:
330:(TCP) of the
329:
325:
320:
318:
314:
309:
307:
303:
299:
295:
291:
287:
282:
280:
276:
272:
268:
264:
260:
256:
252:
247:
245:
241:
237:
227:
225:
221:
210:
208:
204:
200:
196:
192:
188:
183:
181:
180:bit numbering
177:
173:
169:
165:
161:
157:
153:
149:
145:
134:
131:
123:
120:December 2016
112:
109:
105:
102:
98:
95:
91:
88:
84:
81: –
80:
76:
75:Find sources:
69:
65:
59:
58:
53:This article
51:
47:
42:
41:
36:
29:
22:
485:
467:
377:
374:flow control
370:
363:
359:/dev/urandom
352:
349:Flow control
336:
321:
310:
288:, including
283:
248:
244:flash memory
233:
216:
209:bytestream.
207:asynchronous
184:
176:octet stream
175:
163:
151:
147:
143:
141:
126:
117:
107:
100:
93:
86:
74:
62:Please help
57:verification
54:
473:"Bitstream"
412:Bit banging
391:packet loss
298:file access
195:synchronous
79:"Bitstream"
28:Data stream
509:Categories
493:. Oracle.
459:References
164:bytestream
148:bit stream
90:newspapers
290:Unix-like
191:computing
144:bitstream
495:Archived
477:Archived
405:See also
361:), etc.
284:On most
230:Examples
156:sequence
315:, some
294:Windows
220:framing
154:, is a
104:scholar
397:, and
277:, and
201:, and
106:
99:
92:
85:
77:
383:queue
378:ready
199:SONET
168:bytes
111:JSTOR
97:books
337:The
292:and
240:PROM
222:and
189:and
162:. A
160:bits
146:(or
83:news
242:or
158:of
66:by
511::
401:.
393:,
389:,
281:.
273:,
269:,
265:,
261:,
257:,
142:A
357:(
133:)
127:(
122:)
118:(
108:·
101:·
94:·
87:·
60:.
37:.
30:.
23:.
Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.