Takashi Yano
bb42852062
Cygwin: pty: Implement new pseudo console support.
...
- In this implementation, pseudo console is created for each native
console app. Advantages and disadvantages of this implementation
over the previous implementation are as follows.
Advantages:
1) No performance degradation in pty output for cygwin process.
https://cygwin.com/pipermail/cygwin/2020-February/243858.html
2) Free from the problem caused by difference of behaviour of control
sequences between real terminal and pseudo console.
https://cygwin.com/pipermail/cygwin/2019-December/243281.html
https://cygwin.com/pipermail/cygwin/2020-February/243855.html
3) Free from the problem in cgdb and emacs gud.
https://cygwin.com/pipermail/cygwin/2020-January/243601.html
https://cygwin.com/pipermail/cygwin/2020-March/244146.html
4) Redrawing screen on executing native console apps is not necessary.
5) cygwin-console-helper is not necessary for the pseudo console
support.
6) The codes for pseudo console support are much simpler than that
of the previous one.
Disadvantages:
1) The cygwin program which calls console API directly does not work.
2) The apps which use console API cannot be debugged with gdb. This
is because pseudo console is not activated since gdb uses
CreateProcess() rather than exec(). Even with this limitation,
attaching gdb to native apps, in which pseudo console is already
activated, works.
3) Typeahead key inputs are discarded while native console app is
executed. Simirally, typeahead key inputs while cygwin app is
executed are not inherited to native console app.
4) Code page cannot be changed by chcp.com. Acctually, chcp works
itself and changes code page of its own pseudo console. However,
since pseudo console is recreated for another process, it cannot
inherit the code page.
5) system_printf() does not work after stderr is closed. (Same with
cygwin 3.0.7)
6) Startup time of native console apps is about 3 times slower than
previous implemenation.
7) Pseudo console cannot be activated if it is already activated for
another process on same pty.
2020-08-22 13:43:49 +02:00
..
2020-08-22 13:43:46 +02:00
2020-05-30 19:41:18 +02:00
2020-08-05 21:58:22 +02:00
2020-03-11 13:45:58 +01:00
2020-08-05 21:58:22 +02:00
2020-08-18 07:04:25 -04:00
2020-05-26 10:22:41 +02:00
2016-06-23 10:09:17 +02:00
2020-08-05 21:58:22 +02:00
2016-06-23 10:09:17 +02:00
2016-06-23 10:09:17 +02:00
2020-04-07 17:42:02 +02:00
2016-06-23 10:09:17 +02:00
2016-06-23 10:09:17 +02:00
2020-08-03 12:41:44 +02:00
2019-01-22 15:42:07 +01:00
2019-01-22 15:42:07 +01:00
2016-06-23 10:09:17 +02:00
2019-07-24 22:32:48 +02:00
2016-04-01 13:53:25 +02:00
2016-04-04 16:39:41 +02:00
2016-06-23 10:09:17 +02:00
2016-06-23 10:09:17 +02:00
2020-02-28 15:02:09 +01:00
2016-08-25 14:18:31 +02:00
2016-06-23 10:09:17 +02:00
2018-02-20 18:01:40 +01:00
2019-01-22 16:38:14 +01:00
2020-03-11 13:45:58 +01:00
2019-03-04 17:31:27 +01:00
2016-06-23 10:09:17 +02:00
2016-06-23 10:09:17 +02:00
2016-08-20 17:14:55 +02:00
2016-06-23 10:09:17 +02:00
2016-06-23 10:09:17 +02:00
2020-03-11 13:45:58 +01:00
2016-06-23 10:09:17 +02:00
2016-06-23 10:09:17 +02:00
2016-06-23 10:09:17 +02:00
2020-02-26 20:55:14 +01:00
2019-01-23 21:45:59 +01:00
2016-06-25 13:36:52 +02:00
2016-06-23 10:09:17 +02:00
2016-06-25 00:43:01 +02:00
2019-08-18 14:02:01 +02:00
2018-03-05 17:49:50 +01:00
2016-06-23 10:09:17 +02:00
2016-06-23 10:09:17 +02:00
2016-06-23 10:09:17 +02:00
2014-11-26 19:46:59 +00:00
2016-06-23 10:09:17 +02:00
2016-06-23 10:09:17 +02:00
2020-08-05 21:58:22 +02:00
2016-06-23 10:09:17 +02:00
2016-06-23 10:09:17 +02:00
2019-10-23 10:05:42 +02:00
2019-11-04 10:34:59 +01:00
2019-10-23 10:05:42 +02:00
2020-03-11 13:45:58 +01:00
2019-02-07 15:58:02 +01:00
2019-06-03 18:37:52 +02:00
2019-05-05 10:04:43 -04:00
2016-06-23 10:09:17 +02:00
2020-08-22 13:43:49 +02:00
2016-06-23 10:09:17 +02:00
2020-01-28 21:59:25 +01:00
2017-01-10 16:24:50 +01:00
2018-02-20 17:59:53 +01:00
2017-11-27 14:36:06 +01:00
2020-08-20 10:46:23 -04:00
2016-06-23 10:09:17 +02:00
2020-03-11 13:45:58 +01:00
2020-03-11 13:45:58 +01:00
2019-08-09 17:49:16 +02:00
2016-06-23 10:09:17 +02:00
2020-08-22 13:43:49 +02:00
2019-01-07 12:29:07 +01:00
2016-06-23 16:56:41 +02:00
2020-05-28 13:34:19 -04:00
2020-08-05 21:58:22 +02:00
2020-08-05 21:46:53 +02:00
2020-04-24 16:22:26 +02:00
2020-03-11 13:45:58 +01:00
2016-06-23 10:09:17 +02:00
2019-03-30 20:08:36 +01:00
2020-08-04 10:10:40 +02:00
2019-03-30 20:08:36 +01:00
2020-03-11 13:45:58 +01:00
2019-07-22 18:42:39 +02:00
2019-07-22 18:42:39 +02:00
2019-07-22 18:42:39 +02:00
2016-12-14 14:14:28 +01:00
2019-07-22 08:15:16 -04:00
2019-07-22 14:06:35 -04:00
2020-08-05 21:58:22 +02:00
2019-07-12 17:27:26 +02:00
2020-07-20 09:49:34 +02:00
2020-01-30 09:43:19 -05:00
2020-02-28 15:27:16 +01:00
2020-08-05 21:58:22 +02:00
2018-06-29 15:31:15 +02:00
2020-08-05 21:58:22 +02:00
2019-02-25 21:01:32 +01:00
2020-08-22 13:43:49 +02:00
2019-07-22 18:42:39 +02:00
2020-03-11 13:45:58 +01:00
2020-08-05 21:58:22 +02:00
2016-06-23 10:09:17 +02:00
2020-08-05 21:58:22 +02:00
2020-08-22 13:43:49 +02:00
2020-03-11 13:45:58 +01:00
2020-08-22 13:43:49 +02:00
2019-06-03 18:38:16 +02:00
2020-08-20 10:46:23 -04:00
2016-06-23 10:09:17 +02:00
2016-06-23 10:09:17 +02:00
2016-06-23 16:56:41 +02:00
2019-01-15 13:19:41 +01:00
2020-08-05 21:58:22 +02:00
2020-01-28 21:59:25 +01:00
2016-03-24 16:39:15 +01:00
2016-03-24 16:39:15 +01:00
2020-08-05 21:58:22 +02:00
2019-06-04 16:58:53 +02:00
2016-06-23 10:09:17 +02:00
2020-03-11 13:45:58 +01:00
2016-06-23 10:09:17 +02:00
2016-06-23 10:09:17 +02:00
2016-06-23 10:09:17 +02:00
2016-06-23 10:09:17 +02:00
2016-06-23 10:09:17 +02:00
2016-06-23 10:09:17 +02:00
2016-06-23 10:09:17 +02:00
2019-01-23 10:46:24 +01:00
2020-02-28 15:02:09 +01:00
2019-01-07 19:35:00 +01:00
2016-06-23 10:09:17 +02:00
2016-06-23 10:09:17 +02:00
2019-04-30 11:55:04 +02:00
2019-04-30 11:55:04 +02:00
2019-03-02 12:43:34 +01:00
2020-03-11 13:45:58 +01:00
2020-05-30 19:41:18 +02:00
2019-03-12 17:09:42 +01:00
2017-03-27 22:03:58 +01:00
2020-08-05 21:58:22 +02:00
2020-03-11 13:45:58 +01:00
2016-08-20 17:14:55 +02:00
2016-03-29 14:43:55 +02:00
2016-03-24 16:39:15 +01:00
2020-04-07 18:23:11 +02:00
2020-03-11 13:45:58 +01:00
2015-08-17 11:05:43 +02:00
2019-01-24 11:39:43 +01:00
2020-04-07 18:23:11 +02:00
2019-08-08 11:27:52 +02:00
2016-06-23 10:09:17 +02:00
2020-07-22 10:51:27 +02:00
2019-02-18 10:26:53 +01:00
2019-02-18 10:23:15 +01:00
2016-06-23 10:09:17 +02:00
2016-06-23 10:09:17 +02:00
2020-03-11 13:45:58 +01:00
2016-06-23 10:09:17 +02:00
2016-06-23 10:09:17 +02:00
2016-06-23 10:09:17 +02:00
2020-07-10 10:29:33 +02:00
2020-07-22 10:51:27 +02:00
2020-03-11 13:45:58 +01:00
2016-12-14 14:14:28 +01:00
2020-08-05 21:58:22 +02:00
2020-08-05 21:58:22 +02:00
2020-01-28 21:59:25 +01:00
2016-09-08 13:36:31 +02:00
2016-06-23 10:09:17 +02:00
2020-01-28 21:59:25 +01:00
2019-11-02 19:55:24 +01:00
2018-02-23 15:24:18 +01:00
2020-08-05 21:58:22 +02:00
2020-02-26 16:59:56 +01:00
2019-01-22 18:20:18 +01:00
2016-06-23 10:09:17 +02:00
2016-06-23 10:09:17 +02:00
2016-02-17 10:55:28 +01:00
2018-06-27 17:56:59 +02:00
2020-03-11 13:45:58 +01:00
2020-08-05 21:58:22 +02:00
2018-04-16 22:46:11 -05:00
2016-06-23 10:09:17 +02:00
2016-06-23 10:09:17 +02:00
2016-06-23 10:09:17 +02:00
2018-02-07 13:07:44 +01:00
2017-06-19 08:16:42 -05:00
2019-06-28 17:10:39 +02:00
2020-08-05 21:58:22 +02:00
2019-03-27 17:08:49 +01:00
2020-03-11 13:45:58 +01:00
2020-08-05 21:58:22 +02:00
2020-07-10 10:29:47 +02:00
2020-03-11 13:45:58 +01:00
2020-03-11 13:45:58 +01:00
2020-08-22 13:43:49 +02:00
2020-03-23 21:06:03 +01:00
2016-06-23 10:09:17 +02:00
2016-06-23 10:09:17 +02:00
2019-02-07 15:58:02 +01:00
2019-02-07 15:58:02 +01:00
2019-08-08 11:27:52 +02:00
2020-02-18 11:25:12 +01:00
2020-08-05 21:58:22 +02:00
2020-02-18 11:25:12 +01:00
2020-08-22 13:43:49 +02:00
2020-08-22 13:43:49 +02:00
2018-11-26 17:59:10 +01:00
2020-08-22 13:43:49 +02:00
2020-07-10 10:29:33 +02:00
2016-06-23 10:09:17 +02:00
2020-01-29 19:03:31 +01:00
2020-02-18 11:25:12 +01:00
2016-06-23 10:09:17 +02:00
2016-06-23 10:09:17 +02:00
2020-01-28 17:58:06 +01:00
2020-08-05 21:46:53 +02:00
2018-07-06 10:41:21 +02:00
2020-08-05 21:58:22 +02:00
2016-06-23 10:09:17 +02:00
2016-06-23 10:09:17 +02:00
2019-07-12 17:27:26 +02:00
2018-06-27 17:56:59 +02:00
2019-06-25 15:44:43 -04:00
2019-06-25 15:44:43 -04:00
2020-03-11 13:45:58 +01:00
2016-06-23 10:09:17 +02:00
2020-03-11 13:45:58 +01:00
2019-08-18 14:02:01 +02:00
2019-08-18 14:02:01 +02:00
2020-08-22 13:43:49 +02:00
2020-08-22 13:43:49 +02:00
2020-08-05 21:58:22 +02:00
2019-07-19 14:14:33 -04:00
2016-06-23 10:09:17 +02:00
2016-09-08 13:36:29 +02:00
2016-06-23 10:09:17 +02:00
2020-07-10 10:29:33 +02:00
2020-07-01 20:30:52 +02:00
2020-07-01 20:30:52 +02:00
2016-06-23 10:09:17 +02:00
2016-06-23 10:09:17 +02:00
2016-06-23 10:09:17 +02:00
2016-06-23 10:09:17 +02:00
2020-04-07 17:42:02 +02:00
2020-08-22 13:43:49 +02:00
2016-06-23 10:09:17 +02:00
2016-03-29 14:43:55 +02:00